abcd11.gmail.com
残りは維持しながら、下の行1、2、2から、およびを削除するにはどうすればよいですか?私のファイルには、次の数千行があります。*test1:
abcd14.gmail.com
*fortest2:
abcd19.gmail.com
*asatesteg:
May 23 03:44:02 abcd11.gmail.com x.x.x.x.x: *test1: May 23 04:46:21.032: #TEST1_ENTRY:4105 THIS is a test1
May 23 03:44:02 abcd14.gmail.com x.x.x.x.x: *fortest2: May 23 04:46:21.032: #TEST2_ENTRY:4105 THIS is a test2
May 23 03:44:02 abcd19.gmail.com x.x.x.x.x: *asatesteg: May 23 04:46:21.032: #TESTEG_ENTRY:4105 THIS is a testeg
答え1
あなたはsed
交換を試すことができます
$ sed -e 's/abcd[0-9]*//g' -e 's/*test[0-9]*://g' file
これはabcd[0-9]*
それぞれに一致し、abcd
その後に数字が続きます。*test[0-9]*:
答え2
カットを使用したソリューション:
cat $FILE | cut -d' ' -f4,6 --complement
答え3
常に同じ文を削除する必要がある場合は、次のことを試してください。
sed -e 's/abcd[0-9]*//g' -e 's/*test[0-9]*://g' file.ext
この出力を保存するには、出力がstdoutとして表示されます。>ディレクティブの詳細に追加するか、>>内容を別のファイルに追加します。
sed -e 's/abcd[0-9]*//g' -e 's/*test[0-9]*://g' file.ext>new_file.ext
sed -e 's/abcd[0-9]*//g' -e 's/*test[0-9]*://g' file.ext>>new_file.ext
その後、古いファイルを削除して新しいファイルに置き換えることができます。
rm file.ext
mv new_file.ext file.ext