하위 폴더의 파일을 포함하여 모든 .html 파일을 .txt로 변경하는 mac 터미널 명령이 있습니까?
답변
실제로 이름을 바꾸려는 것 같습니다. 폴더 내부에서 다음을 실행하십시오. 명령을 신뢰하지 않는 경우 명령을 수행 echo
하기 전에 추가 mv
하십시오.
find . -type f -name "*.html" -exec bash -c "mv {} \`dirname {}\`/\`basename -s.html {}\`.txt" \;
이것은 다음을 수행합니다.
-type f
현재 폴더 (.
)에서 이름이 “.html”(-name "*.html"
)로 끝나는 모든 파일 ( )을 찾습니다.- 파일의 경로 (
dirname
)를 찾아서/
“.html”접미사 (basename -s.html
) 없이 슬래시 ( )와 원본 파일 이름을 추가하고 “.txt”접미사를 추가합니다. - 그런 다음 원본 파일의 이름을 바꿉니다 (
mv
).
실제로 명령의 일부로 프로그램 출력을 사용하기위한“표기법은 더 이상 사용되지 않습니다.
$()
대신 사용해야하지만find
백틱 의 경우 사용하기가 더 쉽습니다.
답변
이름을 바꾸다
brew를rename
사용하여 설치할 수있는 것을 사용할 수 있습니다 .
rename
추출을 사용하여 설치하십시오 .brew install rename
다음을 사용하여 파일 이름을 바꾸십시오 rename
.
rename -s .html .txt *
답변
for 루프
for file in *.html; do
mv "${file}" "${file%.html}".txt
done
이 ‘for loop’는이를 수행하는 한 가지 방법 일뿐입니다.