여러 파일 내에서 텍스트 찾기 및 바꾸기

여러 파일 내에서 텍스트 찾기 및 바꾸기

연결된 튜토리얼의 Notepad++와 같이 여러 파일에서 특정 텍스트를 찾고 바꾸는 방법을 알고 싶습니다.

예:http://cybernetnews.com/find-replace-multiple-files/

답변1

여기서는 sed를 사용하여 /home/user/directory/ 디렉터리에서 확장자 c가 있는 모든 파일에서 "cybernetnews"라는 단어가 나타나는 모든 것을 "cybernet"으로 바꿉니다.

find /home/user/directory -name \*.c -exec sed -i "s/cybernetnews/cybernet/g" {} \;

실행 디렉터리에서 재귀적으로 검색하고 읽기 가능하고 쓰기 가능한 일반 파일에서만 작업하는 보다 일반적인 변형입니다.

find ./ -type f -readable -writable -exec sed -i "s/cybernetnews/cybernet/g" {} \;

답변2

스트림 편집기인 sed는 이러한 종류의 작업을 위한 강력한 유틸리티이며 제가 가장 먼저 선택하는 것입니다. 그러나 Ubuntu 기반 기본 응용 프로그램을 사용하여 일반 텍스트 편집기에서 이 작업을 수행하려면 Jedit를 살펴보는 것이 좋습니다. , 저장소에서 사용할 수 있으며 콘솔에 다음을 입력하여 설치할 수 있습니다.

sudo apt-get install jedit

jedit를 시작하고 검색 메뉴 항목을 클릭한 후 메뉴 목록에서 디렉토리에서 검색 항목을 클릭하면 아래 대화 상자가 표시됩니다.

폴더 대화 상자에서 Jedit 검색

이는 Notepad++와 유사하며 동일한 기능을 수행합니다. 이것이 바로 여러분이 원하는 것이라고 생각합니다.

답변3

또 다른 GUI 옵션은정규식: 정규식 스크린샷

답변4

확인해보세요지니, Linux를 위한 완벽한 NPP 대체품입니다. 정확히 그렇게 할 수 있으며 정규식을 사용할 수도 있습니다.

관련 정보