번호를 접두사로 사용하여 여러 파일에 순차적으로 번호를 매깁니다.

번호를 접두사로 사용하여 여러 파일에 순차적으로 번호를 매깁니다.

따라서 내 Linux 컴퓨터에는 다음 파일 이름을 가진 58개의 파일이 있습니다.

Theory of Computation (TOC) | Basics of TOC | Lec 1 | GATE Computer Science⧸IT Engineering Exam [7DOPjYGtnTQ].mp4
Theory of Computation (TOC) | Operations | Lec 2 | GATE Computer Science⧸IT Engineering Exam [XCm43gyfl4M].mp4
Theory of Computation (TOC) | Chomsky Hierarchy | Lec 3 | GATE Computer Science⧸IT Engineering Exam [_YvKlbKmbNg].mp4

각 파일 이름에는 강의 번호 뒤에 "Lec"이 붙습니다. 다음과 같이 각 파일에 연속적으로 숫자를 추가하고 싶습니다.

1 - Theory of Computation (TOC) | Basics of TOC | Lec 1 | GATE Computer Science⧸IT Engineering Exam [7DOPjYGtnTQ].mp4
2 - Theory of Computation (TOC) | Operations | Lec 2 | GATE Computer Science⧸IT Engineering Exam [XCm43gyfl4M].mp4
3 - Theory of Computation (TOC) | Chomsky Hierarchy | Lec 3 | GATE Computer Science⧸IT Engineering Exam [_YvKlbKmbNg].mp4

어떻게 해야 하나요?

답변1

그리고 zsh:

autoload -Uz zmv
zmv -n '*| Lec (<->) |*' '$1 - $f'

-n결과가 만족스러우면 삭제(테스트 실행)하세요.

답변2

그리고~의:

rename -n 's/\bLec\s+(\d+)/$1 - $_/' Theory*

dry-run출력이 양호하면 -n( )을 제거합니다.

필요한 버전 rename:

$ rename 2>&1 | grep perl
[ -e|-E perlexpr]*|perlexpr [ files ]

관련 정보