パスワード
sed -n 's/.*tex:/[preventColonFromResult]/p' ./BitTorrentSync/Gyn/1.12.2015.tex: Agents in young <40yr?
どこ
- 入力はです
./BitTorrentSync/Gyn/1.12.2015.tex: Agents in young <40yr?
。 - 予想される出力はです
./BitTorrentSync/Gyn/1.12.2015.tex
。
-n
出力をに渡したいのでここでは意味がないと思います。less
一致を検索しましたが、実際には結果に.*tex:
含めないでください。最終的に交換しないオプションが:
あります。p
DonCristiの出力grep
:
//シードなしgrep
でコロンで分割してみてください... GNU Grep 2.23のコードsed
grep
find . -name "*.tex" -exec ggrep -i -oP '^[^:]*(?=:)' {} \; | less
出力に失敗すると、ファイル名ではなくファイルの内容が出力されます。このコマンドは実際にはファイルの内容のみを含み、ファイル名は無視します。
:
SED / Grep / ...でコロンの前のすべてのアイテムをどのようにインポートしますか?
ベストアンサー1
sed
引数ではなくstdinで動作、ファイル名を指定しない限り。- 保持するアイテムよりも削除するアイテムを指定する方が簡単です
sed
。
変える
sed -n 's/.*tex:/[preventColonFromResult]/p' ./BitTorrentSync/Gyn/1.12.2015.tex: Agents in young <40yr?
おそらくあなたは
printf '%s\n' './BitTorrentSync/Gyn/1.12.2015.tex: Agents in young <40yr?' | sed 's/:.*//'
ただし、この特定のユースケースでは、次の単一目的ツールを使用することもできますcut
。
printf '%s\n' './BitTorrentSync/Gyn/1.12.2015.tex: Agents in young <40yr?' | cut -d: -f1