2016-07-17 10 views
0

私は.txtファイルから行を読み込むと、以前にARRAY読取ライン

cat stores/locations.txt |while read -r LINE;do 
echo "$LINE" > county/${ARRAY[${i}]}/localstores.txt 
done 

で作成された独自のフォルダにテキストからそれぞれの行をコピーしようとしています私はこれを実行すると、ディレクトリの1つのファイルが作成されますが、ストアの連絡先情報は1行だけですが、本当にしたいのは、親フォルダの代わりにARRAYの各要素にファイルを置くことです。

データの各行は、次のものが含まれます。

<storeid> <storename> <amountofEmployees> <nameofManager> 

私はスーパーこだわっていると、本当に助けをいただければ幸いです!

+1

我々はサンプルデータを持っていた場合、我々は推測する必要はないだろうが、私の推測では、あなたが '郡/に複数の行を追加したいということです$ {ARRAY [$ {i}]}/localstores.txt'ファイル。そのためには、 '' 'リダイレクトを使うことができるはずです。がんばろう。 – shellter

+0

迅速な返信をありがとう。データは、<従業員数><担当マネージャ> .....の行に沿った情報行です。各行は独自のフォルダに移動する必要があります – Jack

+0

サンプルデータをお寄せいただきありがとうございます一部。追加リダイレクトのために '' 'を試しましたか?がんばろう。 – shellter

答えて

1

これを行う簡単な方法は、各行に新しいファイルを作成し、必要に応じてその行を配列に追加することです。

declare -A myArray() 

while IFS= read -r line # Read a line 
do 
    touch mytargetpath/"$line.txt" # Creates a new file for each of the line in the desired path 
    myArray+=("$line") # Append line to the array 
done < stores/location.txt 

そして、印刷配列の内容: -

# Print the file (print each element of the array) 

for e in "${myArray[@]}" 
do 
    echo "$e" 
done 
関連する問題