2016-04-27 23 views
0

別のファイルのようなファイル:ソート私は2つのテキストファイル持って

第一のファイル:

1 C 
1 D 
1 B 
1 A 

第二のファイル:私はこのような最初のファイルをソートしたい

B 
C 
D 
A 

1 B 
1 C 
1 D 
1 A 

bでスクリプトを教えてもらえますか?灰(またはコマンド)。

+0

をすべての行が '1'文字aでのみ起動しませんスペース?または、任意の数値/文字列にすることができますか? –

+0

1とスペースのみ。それは数字です(任意の行と同じです) – astonished

+0

最初の列とスペースを削除できます。今、私は最初のファイルを2行目(1行ずつ)のようにソートしています。 – astonished

答えて

0

最初のファイルを無視してこれを行うにはどうすればよいですか?

echo -n > result-file.txt # empty result file if already created 
while read line; do 
    echo "1 $line" >> result-file.txt 
done < file2.txt 

ファイルの形式が特定の場合は意味があります。

+1

| while ... 'と言うと、 'while ... done fedorqui

+1

sedのように 'sed 's /.*/ 1&/' file2.txt'のように反復するほうがはるかに効率的です – pixelbeat

0

私は、ソートの問題を解決(私は最初の列を排除)し、今私は(前のように、最初の列)を追加したい

awk 'FNR == NR { lineno[$1] = NR; next} 
{print lineno[$1], $0;}' ids.txt resultpartial.txt | sort -k 1,1n | cut -d' ' -f2- 

このスクリプトを使用

1 .....

0

「ソート」フィールドには、何の重複値が含まれていないと仮定すると:

awk 'FNR==NR {line[$2] = $0; next} {print line[$1]}' file1 file2 
関連する問題