2

スペース、タブなど、それらの単語の間にあるものを含む次のテキストファイルがあるとします。

1     test.1
2  word.2
3   whatever.5

2番目の列を抽出し(cut -d' ' -f2 test.txt理解できないため動作しません)、次に小数点の前の部分を抽出し、その結果をいくつかのコードに個別にフィードします。したがって、上記のテキスト ファイルは次の 3 つのコマンドを作成する必要があります。

mycommand test
mycommand word
mycommand whatever

私は次の構築を試みました:

cat test.txt | gawk '{print $2;}' | gawk -F[.] '{print $1;}' | xargs  -0 mycomand

これでは、望ましい結果が得られません (つまり、3 つの異なるジョブが作成されます)。

質問: 1. 正しい方法は? 2. 式を単純化する方法 3. 式のどこが間違っていcutますか?

4

3 に答える 3

1

別の方法が必要な場合のPerlの回答:

perl -ne'print (((/^\d+\s+([^\.]+)/)[0])."\n")'
于 2013-10-04T19:27:10.027 に答える