공백이 포함된 여러 파일의 이름을 바꾸는 방법이 필요합니다. 나는 가지고있다:
>ls
Garbage Foo1.txt
Garbage Foo2.txt
Garbage Foo3.txt
Garbage Foo4.txt
...
다음을 수행해야 합니다.
Foo1.txt
Foo2.txt
Foo3.txt
Foo4.txt
...
이 작업을 수행하는 방법에 대한 아이디어가 있습니까?
답변1
Perl 이름 바꾸기:
rename -n 's/.*\s+//' *.txt
-n
스위치를 제거하면 실제로 그렇게 할 수 있습니다. ( -n
== 시험 실행)
답변2
rename
이는 util-linux 제품군의 유틸리티가 작업을 수행하는 몇 안 되는 경우 중 하나입니다. 대부분의 배포판은 rename
Debian, Ubuntu 및 그 파생물에서 rename
이 유틸리티를 제공합니다.더욱 다양하고 강력한 유틸리티util-linux 유틸리티는 이라고 합니다 rename.ul
.
rename 'Garbage ' '' *.txt
완전히 이식 가능한 솔루션은 다음과 같습니다.
for x in *.txt; do
mv -- "$x" "${x#'Garbage '}"
done
답변3
그냥 bash를 사용하세요:
for file in ./*.txt; do mv -- "$file" "${file/Garbage /}"; done