youtube-dl을 통해 다양한 소스에서 다운로드한 수많은 동영상의 이름을 바꾸려고 합니다. 아시다시피 yt-dl은 파일 이름에 보기 코드를 추가합니다.
예를 들어
영상제목-dQw4w9WgXcQ.mp4
파일 이름에서 마지막 X 문자를 제거하는 프로그램이나 CLI 명령을 찾고 있습니다. 예시에서 숫자는 12자입니다(파일 확장자 .mp4 제외).
나는 그러한 명령을 검색해 보았지만 작동하는 것을 찾지 못했습니다. 또한 KReename을 시도했지만 "마지막 문자부터 시작하는 X 문자 제거"에 해당하는 기능을 찾을 수 없었습니다. 해당 기능을 사용했던 Windows 프로그램이 기억납니다.
이 작업을 수행하는 데 사용할 수 있는 "간단한" 명령이 있습니까? 또는 프로그램이나 KRename의 일부 설정입니다. PyRename을 시도했지만 운도 없습니다.
답변1
그리고prename
(진주이름 바꾸기) 명령:
prename 's/(.*).{12}(\.mp4)/$1$2/' *.mp4
답변2
그리고 zsh
:
autoload zmv # best in ~/.zshrc
zmv -n '(*)?(#c12).mp4' '$1.mp4'
(만족하면 삭제하세요 -n
(모의 실행)).
답변3
이에 대해 생각하는 한 가지 방법은 마지막 16자(확장자 포함)를 제거하려는 것이므로 다음을 사용하는 것입니다.세게 때리다 매개변수 확장이것을하기 위해:
${parameter:offset:length}
하위 문자열 확장. 최대로 확장하세요.
length
캐릭터의 가치parameter
지정된 문자부터 시작offset
. 만약에parameter
예@
, 첨자가 붙은 인덱스 배열@
또는*
또는 연관 배열 이름을 사용하는 경우 결과는 아래 설명과 같이 다양합니다. 만약에length
생략됨, 값의 하위 문자열로 확장됨parameter
지정된 문자부터 시작offset
값의 끝까지 확장됩니다.length
그리고offset
산술 표현식입니다(참조:산술 평가[다음과 같은]).만약에
offset
값 끝에서 문자 오프셋으로 사용되는 0보다 작은 숫자로 평가됩니다.parameter
. 만약에length
값 끝에서 문자 오프셋으로 해석되는 0보다 작은 숫자로 평가됩니다.parameter
여러 문자 대신 확장자는 문자 사이의 문자입니다.offset
그리고 그 결과. 콜론과의 혼동을 피하기 위해 음수 오프셋은 콜론과 최소한 하나의 공백으로 구분되어야 합니다.:-
확장.
음수에는 콜론 뒤에 공백이 필요하다는 점을 고려하면 다음과 같이 할 수 있습니다.
#!/bin/bash
for f in *.mp4; do
mv -- "$f" "${f:0: -16}.mp4"
done
exit
먼저 실행한 다음 시험 실행에서 허용 가능한 결과가 나올 때 실행하여 이를 테스트할 수 있습니다 echo mv -- "$f" "${f:0: -16}.mp4"
. echo
(부정적인 지원 참고length
는 비교적Bash에 최근 추가되었습니다. )
A Star is Born-dQw4w9WgXcQ.mp4
및 가 있는 경우 A Star is Born-foobar42quuxBAZ.mp4
둘 다 이름이 변경됩니다 A Star is Born.mp4
(즉, "충돌"이 발생함). 원본 파일을 실행하면 mv
두 번째 파일의 이름이 바뀌면 첫 번째 파일이 손상됩니다. mv -i
이를 방지하기 위해 이것을 사용할 수도 있습니다 .
답변4
Thunar 일괄 이름 바꾸기 도구( thunar -B
).
KRename은 이 작업을 수행할 수 없습니다. KDE용으로 특별히 제작되었지만 독립형으로 사용할 수 있는 불완전한 Thunar 이름 바꾸기 포크가 있습니다.바이오닉 배치 이름 바꾸기"). 일부 기본 옵션이 누락되었습니다(설정 기억, 목록 항목 재정렬).
이 문제는 Thunar 파일 관리자 및 기타 xfce 도구와 함께 제공되는 Thunar renamer에 존재합니다. Thunar가 Plasma KDE의 기본 파일 관리자를 방해할 수 있습니다: 저는 다음을 사용합니다.이 솔루션.
추가 답변으로[1-[#length-12]]
Krename의 옵션 중 하나:
이 옵션은 실제로 위치합니다. 파일 이름(라벨) -간단한 파일 이름(라벨) -파일 이름(떨어지다):맞춤 이름.
마지막으로 사용한 옵션이 기억됩니다(krename을 다시 시작한 후).파일 이름(라벨) -고급 파일 이름(라벨) -주형(떨어지다).