![특정 문자가 포함된 디렉터리에 파일 목록 만들기](https://linux55.com/image/87262/%ED%8A%B9%EC%A0%95%20%EB%AC%B8%EC%9E%90%EA%B0%80%20%ED%8F%AC%ED%95%A8%EB%90%9C%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EC%97%90%20%ED%8C%8C%EC%9D%BC%20%EB%AA%A9%EB%A1%9D%20%EB%A7%8C%EB%93%A4%EA%B8%B0.png)
특정 문자가 세 번째 문자로 포함된 폴더의 모든 파일을 나열하고 싶습니다. 각 파일에 대해 삭제나 이동 등의 작업을 수행할 수 있습니다. grep/cut 옵션을 사용하여 ls 명령을 살펴봤지만 처리할 수 있는 최종 목록을 얻는 방법을 모르겠습니다.
감사해요.
답변1
또한 찾기 명령을 사용하여 파일을 찾고 각 파일에 대해 개별적으로 작업을 수행할 수도 있습니다.
find <directory_name> -name '??t*' -exec mv {} <target_directory> \;
답변2
외부 프로그램을 호출하지 않고도 셸에서 직접 일부 패턴 일치를 수행할 수 있습니다.
다음 파일이 포함된 폴더가 있다고 가정해 보겠습니다.
$ ls
ant bat bird cat cats dog fish
다음과 같이 3자로 끝나는 파일만 일치시킬 수 있습니다 t
.
$ ls ??t
ant bat cat
다음 과 같이 모든 파일을 세 번째 문자와 일치시킬 수 있습니다 t
.
$ ls ??t*
ant bat cat cats
여기에서 추가 문서를 참조하세요. https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html