
각 파일의 파일 이름을 해당 파일의 제목으로 바꾸는 CLI 또는 GUI 솔루션을 원합니다.
파일 이름이 콘텐츠를 올바르게 표시하지 않는 라디오 팟캐스트가 여러 개 있습니다. 이것은 제목 아래의 미디어 플레이어에 표시되지만파일 관리자에서 이 콘텐츠를 보는 데 문제가 있습니다.이므로 파일 이름을 제목으로 바꾸고 싶습니다.
Linux 기본 도구를 찾고 있습니다., Foobar2000과 같은 프로그램을 사용하여 Wine에서 이 작업을 수행하는 방법을 알고 있지만.
댓글 후 수정: mp3 파일입니다. Dolphin 파일 관리자의 정보 패널에 표시된 제목 데이터를 볼 수 있습니다.
답변1
당신이 찾고 있다면기본 도구mp3rename
일부 배포판에서는 gui뿐만 아니라 명령줄도 제공합니다 pyrenamer
.
전자의 경우 먼저 "제목"( &t
) 형식을 지정하세요.
mp3rename -s '&t'
mp3rename
그런 다음 파일 이름 목록을 제공하여 파일 이름을 바꿀 수 있습니다 . 예를 들어 mp3 파일이 포함된 디렉토리에 있는 경우 를 입력합니다 . 또는 일부 시작 디렉토리 ABC에서 이름이 지정된 파일을 mp3rename *.mp3
재귀적으로 검색할 수 있습니다 .*.mp3
find ABC -name '*.mp3' -exec mp3rename {} \;
예상치 못한 일이 발생하지 않도록 파일 사본을 처리할 수도 있습니다!
GUI의 경우원뿔Music
, 이후 버전에는 "메타데이터를 사용하여 음악 이름 바꾸기"를 할 수 있는 탭이 있습니다 . 이 필드 에 문자열을 입력 {title}.mp3
하고 작업하려는 파일을 선택한 다음 클릭하여 Preview
이름이 어떻게 될지 확인하세요.
답변2
펠은 어떻습니까? 이는 Linux에 기본입니다. 내 테스트 설정은 다음과 같습니다. 스크립트는 mp3.pl
작업할 노래가 포함된 동일한 디렉토리에 있습니다. music
명령줄 인수로 전달합니다. 코드는 이 디렉터리를 반복하여 모든 mp3 파일을 가져옵니다. 그런 다음 트랙 목록을 한 번에 하나씩 반복하여 이름을 변경하여 트랙 제목을 지정합니다.
먼저 어떤 트랙이 있는지 확인하세요.
$ ls music
track1.mp3 track2.mp3
암호:
use warnings;
use strict;
use File::Copy;
use File::Find::Rule;
use MP3::Tag;
if (! @ARGV){
print "usage: perl mp3.pl <directory>\n";
exit;
}
my $dir = $ARGV[0];
my @files = File::Find::Rule->file()
->name('*.mp3')
->in($dir);
for my $track (@files){
my $mp3 = MP3::Tag->new($track);
my $title = $mp3->title;
$title .= '.mp3';
move $track, "$dir/$title" or die $!;
}
달리다:
perl mp3.pl music
"음악" 디렉토리가 변경되었습니다:
$ ls music/
Almost Famous.mp3 No Love (feat Lil Wayne).mp3