다음과 같이 파일 이름에 큰따옴표가 포함된 파일이 많이 있습니다.
"This_is_a_long_filename_with_quotes".mp3
나는 리눅스 명령 rename을 사용하려고하는데 다음을 사용하여 밑줄을 쉽게 지울 수 있습니다.
rename 's/_//g' *
하지만 \"로 시도하면 아무 일도 일어나지 않습니다(변경 사항을 보려면 -n을 사용합니다).
rename -n 's/\"//g' *
아무것도 이름이 바뀌지 않았습니다
감사해요!
답변1
파일 이름에 "큰 따옴표"가 있습니다.
“Tokyo_String_Quartet-Beethoven_-Late_String_Quartets-CD1-11-Quartet”.mp3
rename
대신에 삽입된 명령을 사용해 보십시오 ."
또는 사용하지 않고 rename
다음 옵션을 수행할 수 있습니다 sed
.
for f in *.mp3
do
new=$(echo $f | sed -E 's/[“”]//g')
mv $f $new
done
모든 배치 셸 작업과 마찬가지로 mv
원본 폴더의 백업에서 테스트/실행하는 것이 가장 안전합니다... 처음 시도할 때 echo
대신 넣어 테스트할 수 있습니다.mv
답변2
작은 guote 내부에서 이스케이프 큰따옴표를 이스케이프할 필요가 없습니다.
rename -n 's/"//g' *
답변3
나는 이것을 Bash에서 할 수 있었습니다:
file=$(ls | grep \")
newName=$(echo $file | sed 's/\"//g')
mv $file $newName