私は1つの数字列(長さ= 14)を含むテキストファイルである大きなリストを持っています。番号には、00001-00004という4つの異なるプレフィックスがあります。 1つのリストを4つのdiffrendファイルに分割するにはどうすればよいですか? 1 つのファイルには、プレフィックスが 1 つの数値リストを含める必要があります。
答え1
次のawk
コマンドを使用します。
awk '/^00001/{print >"file1"} \
/^00002/{print >"file2"} \
/^00003/{print >"file3"} \
/^00004/{print >"file4"}' inputfile
行にどのプレフィックスがあるかを確認し、行全体をに印刷file1
しますfile4
。inputfile
大きなリストを含むファイル。
答え2
(G)awkと一致する
awk 'match($0,/^0000([1-4])/,a){print > "file"a[1]}' file
POSIX awk
awk '/0000[1-4]/{print > "file"substr($0,5,1)}' file
または両方にプレフィックスがある場合
awk '{print > "file"substr($0,5,1)}' file
答え3
無料でお使いいただけますbash
while IFS= read -r num
do
echo "$num" >> "file${num:4:1}"
done < number_list.file