찾기 및 바꾸기 재미 grep + sed!


2

라이브 웹 사이트에 대한 하드 코딩 된 참조가있는 웹 사이트의 개발자 사본이 있습니다.

"www"의 모든 항목을 교체하고 싶습니다. "dev." 모든 파일에서.

grep + sed 조합을 사용할 수 있다고 생각하지만 방법을 잘 모르겠습니다.


3
그것은 프로그래밍 문제가 아닙니다. 기본 파워 유저 기술입니다.
Maciek Sawicki

@Maciek : 나는 그것을 살 수있다!
Josh K

답변:


2

먼저 sed를 하나의 파일에 sed 's/foo/bar/g'사용하여 foo를 bar로 바꿉니다. 그런 다음 grep 대신 find를 제안합니다. 이를 사용하여 변경이 필요한 모든 파일 (* .php, * .html 등)을 찾으십시오. 그런 다음 -exec 옵션을 찾으십시오.

시작하기 전에 프로젝트를 백업하십시오.


2
sed 's/foo/bar/g'전역 교체에 사용 하십시오.
eleven81

감사. 당신은 100 % 맞습니다. 줄이 없으면 첫 번째 인스턴스 만 바꾸십시오. 응답자를 편집했습니다.
Maciek Sawicki

나는 지금까지 성공하지 못하고 이와 같은 것을 시도하고 있습니다 : find. -name '* .html'-exe sed 's / www / dev / g'{} \;

참고로 find를 사용했습니다. -name "* .php"-print | xargs를 나오지 -i의 / www가 \ ./ DEV \ ./ g '
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.