Fedora에서 폴더 이름 바꾸기

Fedora에서 폴더 이름 바꾸기

저는 Fedora 31에서 이것을 사용하여 rename일부 폴더의 이름을 바꾸고 있습니다. 기본적으로 폴더에서 모든 공백을 제거하고 점으로 바꾸고 싶습니다. 다음 명령을 사용하고 있습니다

rename -v " " "." *

그러나 위 명령은 처음 나타나는 공백만 바꿉니다. 예를 들어 다음 메시지가 나에게 표시됩니다.

'folder with multiple space' -> 'folder.with multiple space'

다시 실행하면 다음 공간이 대체됩니다. 한꺼번에 교체할 ​​수 있는 방법은 없나요? 내 경우에는 sedtype 명령 의 Debian/Ubuntu 버전이 "s/ /\./g"작동하지 않습니다. 매개변수가 충분하지 않아 오류가 발생합니다.

답변1

사용하는 경우 zsh사용zmv

배쉬의 경우:

for i in *\ *; do
    mv -vnT "$i" "${i// /.}"
done

답변2

매뉴얼 페이지에는 이것이 작동하는 방식이라고 나와 있으며, 첫 번째 일치 항목만 대체하고 이를 재정의할 수 있는 옵션이 없습니다.

남자의 이름이 바뀌었습니다:

rename  will  rename the specified files by replacing the first
occurrence of expression in their name by replacement.

물론 다음과 같이 스크립트를 작성할 수 있습니다.

while [ "$(rename -v " " "." *)" ]
do
  true
done

Debian/Ubuntu는 완전히 다른 rename.

관련 정보