あるtxtファイルの1つの列と別のtxtファイルの他の列を含むtxtファイルを生成するシェルスクリプトを作成しようとして困っています。
誰か助けてくれませんか?
ありがとう。
file1
とからの行全体を結合していると仮定して、次file2
を使用しますpaste
。
% cat file1
A
B
C
% cat file2
1
2
3
% paste file1 file2
A 1
B 2
C 3
ここで、各ファイルに列がある場合(この例ではコンマで区切られています)、結合file1.col1
してfile2.col2
、ここで
% cat file1
A,***
B,***
C,***
% cat file2
***,1
***,2
***,3
行う
%paste <(cut -d "," -f1 file1) <(cut -d "," -f2 file2)
A 1
B 2
C 3
異なる入力ファイルから異なる列を解析する必要がある場合の 1 つの方法:
paste <(cut -d " " -f1 file1) <(cut -d " " -f2 file2)
またはawkで:
paste <(awk -F, '{print $1}' file1) <(awk -F, '{print $2}' file2)
あなたの質問は少しあいまいなので、フィールドが forcut
と,
inのスペースで区切られていると仮定しawk
ます。
コマンドを確認する必要がありjoin
ます。この説明を見て