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