2017-07-31 37 views
-1

我完全不熟悉腳本和Linux。
我想製作一個腳本,它將用另一個文件的數據生成.txt文件的Z數(1 - 10.000)。生成的文件的Bash用其他文件中的數據生成多個文件

例想:

FILE1.TXT

Number: X 
Date: 31.07.2017<br> 
Text: test 

FILE2.TXT

Number: Y 
Date: 31.07.2017 
Text: test 

file3.txt ..

file4125.txt。

file10000.txt

Xÿ與來自文件numbers.txt若干具有每行一個號碼代替。每個新文件都必須具有來自numbers.txt文件的唯一「Number」。 最後將所有文件移動到新的位置,例如/home/razvan/files

你有什麼建議嗎? 謝謝!

+1

你好,歡迎來到StackOverflow。請花一些時間閱讀幫助頁面,尤其是名爲[「我可以詢問什麼主題?」(http://stackoverflow.com/help/on-topic)和[「我應該問什麼類型的問題避免問?「](http://stackoverflow.com/help/dont-ask)。更重要的是,請閱讀[Stack Overflow問題清單](http://meta.stackexchange.com/q/156810/204922)。您可能還想了解[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 – DanieleO

+1

歡迎來到StackOverflow。如果您在此分享您已經嘗試過的內容,並指出您使用該代碼所遇到的特定問題,那麼您很可能會很快獲得幫助。也請看看[如何創建一個最小,完整和可驗證的示例](https://stackoverflow.com/help/mcve) –

+0

numbers.txt文件中有什麼? –

回答

1

這聽起來像你想是這樣的:

count=0 
while read -r number; do 
    count=$((count + 1)) 
    printf 'Number: %s 
Date: 31.07.2017 
Text: test' "$number" >"/home/razvan/file$count.txt" 
done < numbers.txt 

遍歷所有的線numbers.txt,併爲每一個文件,使用printf創建包含$number格式化字符串。

這將創建一個以file1.txt,file2.txt等開頭的文件列表,位於目錄/home/razvan內。

0

numbafile:

78 
67 
77 

awk '{ print "Number: "$0"\nDate: 31.07.2017\nText: test" > ("/home/razvan/numbafile"$0".txt") }' numbafile 

隨着GAWK,使用數量在numbafile的每一行,然後使用這個($ 0)將數據打印到文件(使用$ 0來命名),即/家庭/勒茲萬/ numbafile78 .txt

相關問題