SED 명령을 사용하여 여러 파일의 공백 단어를 바꾸고 싶습니다.
여러 디렉토리의 많은 파일에 작은따옴표가 포함된 "Danny"라는 단어가 있는데 이를 "Danny Samuel"로 변경하고 싶습니다.
새 단어에 공백이 있기 때문에 이 명령이 작동하지 않습니다.
find . -type f -exec sed -e 's/'Danny'/'Danny Samuel'/g' -i.php '{}' +
답변1
작은 따옴표 안에는 작은 따옴표가 있을 수 없습니다. '
in은 'Danny
따옴표를 닫습니다.
find . -type f -exec sed -e 's/'Danny'/'Danny Samuel'/g' -i.php '{}' +
^^ !!!!! ^ !!!!!!!!!!!! ^^
quoted quoted quoted
unquoted unquoted
써 내려 가다:
find . -type f -exec sed -i.php -e "s/'Danny'/'Danny Samuel'/g" {} +
( .php
백업 파일 확장자로서는 이는 매우 예상치 못한 일입니다.)