4

同時に grep とカットに問題があり、 file がありますtest.txt。ファイル内にはこの構文があります

File: blah.txt Location: /home/john/Documents/play/blah.txt
File: testing.txt Location /home/john

私のコマンドは./delete -r (filename)、ファイル名がblah.txt.

test.txt検索しblah.txtて切り取り、/home/john/Documents/play/blah.txt変数に入れるにはどうすればよいですか

4

3 に答える 3

8
grep -P "^File: blah\.txt Location: .+" test.txt | cut -d: -f3
于 2011-06-20T19:09:32.650 に答える
5

タスクの外部コマンドをできるだけ少なくすることを常にお勧めします。

単一の awkコマンドを使用して、必要なものを達成できます。

awk '/^File: blah.txt/ { print $4 }' test.txt
于 2011-06-20T19:43:51.627 に答える
0

これを試してみてください;)

filename=$(grep 'blah.txt' test.txt | grep -oP 'Location:.*' | grep -oP '[^ ]+$')
./delete $filename
于 2015-09-10T09:40:37.393 に答える