ファイル接続(列)

ファイル接続(列)

私は次のコマンドを持っています:

for file in file??.txt; do awk -f vypis_z_dcout.awk "$file" > "$file".csv; done

結果は各ファイルの数値列であり、すべてのファイルの結果をその列のように1つのファイルにリンクしたいと思います。このコマンドにどのように追加しますか?

paste <(cat f.csv) <(cat f1.csv) <(cat f2.csv) <(cat f3.csv) <(cat f4.csv) .... insert "$file".csv ... > out.csv

または、最初の列にfile01.csv、2番目の列にfile02.csvなどのファイルをインポートする方法は?ありがとう

ベストアンサー1

どういう意味なのか理解できたら、次のような名前のファイルセットで始めましょう。

file01.txt
file02.txt
file03.txt

awkその後、処理された各ファイルのデータ列を生成することで、各テキストファイルを順番に処理できます。したがって、この仮想ディレクトリには6つのファイルがあります。

file01.txt
file02.txt
file03.txt
file01.txt.csv
file02.txt.csv
file03.txt.csv

最後の3つのファイルはプログラムの結果ですawk

前のステップで生成されたCSVファイルを前のステップで生成されたファイルと同じ数の列を持つCSVファイルに貼り付けるには、次のようにします。

paste -d '[DELIMITER]' file??.txt.csv > out.csv

上記のコードを[DELIMITER]生成されたCSVファイルで区切り文字として使用したい文字に置き換えます。たとえば、file01.txt.csv次のデータが含まれている場合:

1
2
3

...file02.txt.csv次のデータが含まれています。

4
5
6

...file03.txt.csv次のデータが含まれています。

7
8
9

...paste -d ';' file??.txt.csv > out.csvこれにより、「out.csv」ファイルに次の内容が入力されます。

1;4;7
2;5;8
3;6;9

おすすめ記事