xsel
txtファイルでいっぱいのフォルダを介してクエリをgrep
パイプするためにクリップボードを使用しようとしています。誰でもこれを行う方法を提案できますか?
ベストアンサー1
再帰オプションの実装をgrep
サポートすることによって:-r
grep
grep -rFe "$(xsel -b -o)" /path/to/your/folder
他のgrep
実装では、find
照会ファイルを使用してください。
find /path/to/your/folder -type f -exec \
grep -Fe "$(xsel -b -o)" /dev/null {} +
これは/dev/null
少なくとも2つのファイル名が渡されるようにするためであるため、文字列がgrep
見つかっgrep
たファイル名は常に印刷されます。
CLIPBOARD 選択項目に複数の行が含まれている場合、各行は個別に検索されます。たとえば、包含を選択すると、または(またはその両方)を含むa<newline>b
行が報告されます。a
b
一致させるには、複数行モードをa<newline>b
使用できます。pcregrep
pcregrep -rM "\Q$(xsel -b -o | sed 's/\\E/&\\&\\Q/g'; printf '\\E')" /path/to/folder