다음과 같은 이름의 파일이 있습니다.
63018933.mp4? 토큰=1325697436_b0c3e70c6e339380b4a484c576a8c287
63808488.mp4? 토큰=1325697401_4ae5f7a68d93873c8881b303e7655e14
예를 들어 63018933.mp4(mp4 뒤의 문자 제거)로 이름을 모두 바꾸려면 어떻게 해야 합니까?
답변1
이 도구가 있는 경우 rename(1)
(Debian 또는 Debian 기반 Linux(Ubuntu 및 그 파생 제품 포함)가 있는 경우 이 도구를 사용할 수 있습니다):
rename -n 's/\.mp4.*$/.mp4/' *mp4*
올바른 패턴이 있다고 확신하면 삭제 -n
(모의 실행)하고 정상적으로 실행되도록 하세요.
rename(1)
주어진 파일 이름에 Perl 정규식을 적용합니다.
대부분의 다른 Linux 배포판에는 rename
이 특정 이름 바꾸기 모드에 도움이 되지 않는 다른 파일 이름 바꾸기 절차가 있습니다.
답변2
이는 한 가지 방법일 수 있습니다.
for file in *.mp4\?token*; do mv --no-clobber "$file" "${file%%\?*}"; done
답변3
그리고 mmv:
mmv -n "*.mp4*" "#1.mp4"
출력이 올바르면 "-n"을 제거하십시오.