을 사용 ubuntu 14.4
하고 grep
명령 출력을 파일 로 리디렉션하려고 시도 하지만이 오류가 계속 발생합니다.
grep: input file 'X' is also the output
이 문제를 검색하여 버그가 있음을 발견했으며 ubuntu 12.4
이에 대한 설명이 없습니다.
다음 명령을 실행합니다.
grep -E -r -o -n r"%}(.*){%" > myfile
답변
에 대한 입력 및 출력과 동일한 파일을 사용할 수 없습니다 grep
. 다음 대안을 고려할 수 있습니다.
-
임시 파일
grep pattern file > tmp_file mv tmp_file file
-
sed
sed -i -n '/pattern/p' file
-
전체 파일을 변수에 넣습니다 (큰 파일은 밝지 않습니다)
x=$(cat file); echo "$x" | grep pattern > file
답변
명령 에서 --exclude
필드를 다음 grep
과 같이 사용할 수 있습니다 .
grep --exclude=myfile -Eron r"%}(.*){%" > myfile
답변
나는 bash에서 길을 찾았다.
cat >> IN_OUTPUT_FILE <<< "$(grep something IN_OUTPUT_FILE)"
의 명령 <<<"..."
이 먼저 실행됩니다.