반응형
디렉토리 및 서브 디렉토리에서 sed로 찾기 및 바꾸기
이 명령을 실행하여 내 사이트 루트의 모든 파일에서 모든 'apple'을 찾아 'orange'로 바꿉니다.
find ./ -exec sed -i 's/apple/orange/g' {} \;
그러나 하위 디렉토리를 거치지 않습니다.
이 명령에 어떤 문제가 있습니까?
다음은 몇 줄의 출력입니다 find ./
.
./index.php
./header.php
./fpd
./fpd/font
./fpd/font/desktop.ini
./fpd/font/courier.php
./fpd/font/symbol.php
sed에 디렉토리 이름을 보내지 않으려면 다음과 같이 찾으십시오.
find ./ -type f -exec sed -i -e 's/apple/orange/g' {} \;
더 큰 s & r 작업의 경우 grep 및 xargs를 사용하는 것이 더 좋고 빠릅니다.
grep -rl 'apples' /dir_to_search_under | xargs sed -i 's/apples/oranges/g'
이것은 나를 위해 일했다 :
find ./ -type f -exec sed -i '' 's#NEEDLE#REPLACEMENT#' *.php {} \;
grep -e apple your_site_root/**/*.* -s -l | xargs sed -i "" "s|apple|orage|"
한 줄 간단한 명령 으로이 작업을 수행 할 수 있다고 생각합니다.
for i in `grep -rl eth0 . 2> /dev/null`; do sed -i ‘s/eth0/eth1/’ $i; done
이 페이지를 참조하십시오 .
linuxOS에서 :
sed -i 's/textSerch/textReplace/g' namefile
"sed"가 작동하지 않으면 다음을 시도하십시오.
perl -i -pe 's/textSerch/textReplace/g' namefile
반응형
'IT story' 카테고리의 다른 글
README.md의 단락 안에 줄 바꿈 (0) | 2020.04.22 |
---|---|
Java에서 문자열을 UTF8 바이트 배열과 변환하는 방법 (0) | 2020.04.22 |
":"를 awk 필드 구분자로 사용하는 방법은 무엇입니까? (0) | 2020.04.22 |
pty와 tty는 무엇을 의미합니까? (0) | 2020.04.22 |
클릭 한 요소의 클래스를 얻는 방법? (0) | 2020.04.22 |