私は最近この解決策を見つけましたが、常に日付と時刻を含むコマンドを使用していたので効果がありました。つまり、私の場合、文字列はほぼ常に一意です。
sed -n -i '/some_string_here/,$p' file_here
ただし、最近は他の種類の文字列(日付と時刻を除く)を使用する必要があります。
問題は、このソリューションが最初の発生でのみ機能することです。
[oracle@server1 ~]$ cat arquivo
OPERATIONAL SYSTEMS:
Windows
MAC OS
OPERATIONAL SYSTEMS TOMORROW:
Linux
Xubunto
OPERATIONAL SYSTEMS TOMORROW:
AIX
SOLARIS
[oracle@server1 ~]$ sed -n -i '/OPERATIONAL SYSTEMS TOMORROW:/,$p' arquivo
[oracle@server1 ~]$ cat arquivo
OPERATIONAL SYSTEMS TOMORROW:
Linux
Xubunto
OPERATIONAL SYSTEMS TOMORROW:
AIX
SOLARIS
最後の項目から最後の項目まで内容を印刷するには、次の作業を行う必要がありますOPERATIONAL SYSTEMS TOMORROW:
。
[oracle@server1 ~]$ cat arquivo
OPERATIONAL SYSTEMS:
Windows
MAC OS
OPERATIONAL SYSTEMS TOMORROW:
Linux
Xubunto
OPERATIONAL SYSTEMS TOMORROW:
AIX
SOLARIS
[oracle@server1 ~]$ sed -n -i 'some command for it' arquivo
[oracle@server1 ~]$ cat arquivo
OPERATIONAL SYSTEMS TOMORROW:
AIX
SOLARIS
どうすればいいですか?
ベストアンサー1
これは次のとおりですsed
。
sed -n 'H; /^OPERATIONAL SYSTEMS TOMORROW:/h; ${g;p;}' arquivo
出力:
OPERATIONAL SYSTEMS TOMORROW:
AIX
SOLARIS
ファイルをその場で編集するには:
sed -i -n 'H; /^OPERATIONAL SYSTEMS TOMORROW:/h; ${g;p;}' arquivo