私はsedを使ってファイルのリストをフィルタリングしています。私はフォルダのソートされたリストを持って、私は特定のものの後にすべての行を取得したい。私が試みたどんな入力でもうまく動作するhereを説明した解決策を使用しているこの作業を行うには、最初の行に一致したときに動作しません。その場合、sedは、入力sedと一致する前にすべての行を削除します
のすべての行を削除します。ここでは例です:
(ssh) [email protected] : ~
[0] % ls -1/
bin
boot
...
sys
tmp
usr
var
vmlinuz
(ssh) [email protected] : ~
[0] % ls -1/| sed '1,/tmp/d'
usr
var
vmlinuz
(ssh) [email protected] : ~
[0] % ls -1/| sed '1,/^bin$/d'
# sed will delete all lines from the input stream
は、どのように私は、最初の行が正規表現にマッチしているときにも限度のケースを検討するコマンドを変更する必要がありますか?
BTW sed '1,1d'
正しく動作し、最初の行のみを削除します。
はコメントありがとうございました。訂正され、他にもいくつかのソリューションが追加されました。 – jm666