Mac에서 다음 명령을 사용하고 있습니다.
$find . -name “*.java” -exec sed -i ’s/foo/bar/g’ {} \;
효과가없는 것 같습니다.
디렉토리에 .java로 끝나는 두 개의 파일이 있으며 둘 다 foo 텍스트가 있습니다. 뭔가 빠졌습니까?
편집 : 의견 요청 결과
[aafghani-03:~/test amirafghani]$ find . -name "*.java" -exec sed -i 's/foo/bar/g' {} \;
sed: 1: "./bar.java": invalid command code .
sed: 1: "./foo.java": invalid command code .
사실, 그것은 적어도 나를 위해 그것을 해결합니다. 큰 따옴표와 작은 따옴표는 각각
—
Lev Levitsky
"
및 로 대체해야합니다 '
.
똑똑한 (?) 따옴표! .. :)
—
Peter.O
내가 붙여 넣은 것은 내가 실행중인 것이 었습니다. 누군가 답변을 게시 할 수 있습니까?
—
Amir Afghani
다음에 질문 할 때 표시되는 오류 메시지를 게시하십시오. 모든 사람의 시간을 절약 할 수 있습니다.
—
Mikel
-exec
그 후 모든 것을 제거하면 어떻게 되나요? Java 파일의 이름을 인쇄합니까? (ASCII 따옴표 대신 스마트 따옴표를 사용하는 것이 걱정됩니다.)