itunes 써 온지가 한참이다. 그러나 그 동안 계속 고통스러웠던 것이 있으니… 중복된 노래 때문에 너무나 지저분하다는 것!
어제 날 잡아서 종일 itunes 한번 정리를 하긴 했지만 결국 끝내지는 못했다. 꽤나 정리 상태가 엉망이고, 도저히 정리 불가한 노래들까지 있어서… 그 이유는 첫째로, 노래를 아내 것까지 합쳐서 50gb에 육박할 정도로 가지고 있기 때문이고, 더 큰 이유는 itunes가 폴더를 알아서 관리하도록 내버려둔 때문이다.
예전에 폴더로 내가 직접 관리하던 것을 언젠가 itunes에게 던져 줬더니 태그 내용 따라 제가 알아서 정리를 했는데, 태그가 제대로 정리가 안 된 노래가 많아서 “알 수 없는 앨범” 따위 폴더에 trak01.mp3 이런 태그도 없는 노래가 수백 곡이 쌓이게 된 것이다. 거기다가 컴퓨터를 몇 번 바꾸기도 하고, 그 동안 컴퓨터 마다 itunes가 제 폴더에 mp3파일을 복사하여 관리하게 하기도 하고 그냥 폴더추가로 노래만 추가하기도 하고 했더니 천지사방에 복사본이…
어제 정리를 하다 보니, 태그 없고 파일명으로도 뭔지 모를 곡들은 정리 불가능했기에 복사본이라도 정리를 하자고 생각하여 중복 항목 표시 기능으로 하나씩 지워 보는데, itunes가 에러가 있는지 몇 번은 원본을 지울까요? 이렇게 묻더니 갑자기 안 묻기 시작하고 지우지도 않는 것이었다. 탐색기로 폴더에 직접 접근하여 지우면 itunes에 업데이트는 안되고… 답답한 마음에 검색을 해보았는데, 역시 이런 케이스인 분들이 많은지 해결책이 있었다.
이곳에서 소개한 방법 대로 해결했다. 간략히 소개하자면 다음과 같다.
1) 중복파일 제거 (itunes 무관) - http://www.lcibrossolutions.com/dmff 에서 해당 프로그램을 다운 받고 실행시켜 중복파일을 제거한다. 실행시켜보면 어떻게 쓰는지 쉽게 알 수 있을 듯.
2) itunes 리스트 업데이트 – txt파일을 하나 만들고 아래 내용(출처: http://www.makeuseof.com)을 붙여 넣은 다음에 확장자를 js로 저장한다. itunes를 끈 상태로, 저장한 js파일을 윈도우즈 익스플로러로 드래그 하여 실행한다. 실행하겠냐는 프롬프트에 예를 선택하면, itunes가 실행되고 리스트 업데이트가 자동 실행된다. 작업이 모두 끝난 후 삭제된 건 수가 알림창으로 뜬다. 이 알림창이 뜨기 전 까지 익스플로러는 닫지 않는다.
=========내용 시작=========
/*
File: RemoveDeadTracks.js
Version: 1.0
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc.
("Apple") in consideration of your agreement to the following terms, and your
use, installation, modification or redistribution of this Apple software
constitutes acceptance of these terms. If you do not agree with these terms,
please do not use, install, modify or redistribute this Apple software.
In consideration of your agreement to abide by the following terms, and subject
to these terms, Apple grants you a personal, non-exclusive license, under Apple�s
copyrights in this original Apple software (the "Apple Software"), to use,
reproduce, modify and redistribute the Apple Software, with or without
modifications, in source and/or binary forms; provided that if you redistribute
the Apple Software in its entirety and without modifications, you must retain
this notice and the following text and disclaimers in all such redistributions of
the Apple Software. Neither the name, trademarks, service marks or logos of
Apple Computer, Inc. may be used to endorse or promote products derived from the
Apple Software without specific prior written permission from Apple. Except as
expressly stated in this notice, no other rights or licenses, express or implied,
are granted by Apple herein, including but not limited to any patent rights that
may be infringed by your derivative works or by other works in which the Apple
Software may be incorporated.
The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN
COMBINATION WITH YOUR PRODUCTS.
IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION
OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT
(INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Copyright � 2004 Apple Computer, Inc., All Rights Reserved
*/
var ITTrackKindFile = 1;
var iTunesApp = WScript.CreateObject("iTunes.Application");
var deletedTracks = 0;
var mainLibrary = iTunesApp.LibraryPlaylist;
var tracks = mainLibrary.Tracks;
var numTracks = tracks.Count;
var i;
while (numTracks != 0)
{
var currTrack = tracks.Item(numTracks);
// is this a file track?
if (currTrack.Kind == ITTrackKindFile)
{
// yes, does it have an empty location?
if (currTrack.Location == "")
{
// yes, delete it
currTrack.Delete();
deletedTracks++;
}
}
numTracks--;
}
if (deletedTracks > 0)
{
if (deletedTracks == 1)
{
WScript.Echo("Removed 1 dead track.");
}
else
{
WScript.Echo("Removed " + deletedTracks + " dead tracks.");
}
}
else
{
WScript.Echo("No dead tracks were found.");
}
=========내용 끝=========
덕분에 중복 항목이라도 싹 정리하고 나니, 한결 개운해졌다~ 약 5gb정도를 벌게 됐고. 앞으로는 곡 하나하나에 더욱 애정을 갖고 자주 정리해주어야겠다.
Delete duplicated files in iTunes
답글삭제