pondělí 12. září 2011

Total Commander - Hromadné přejmenování stáhnutých souborů

Tě pic,
normálně, znám lidi, kteří si stáhnou nějakou věc z netu a prostě si to hodí do nějaký složky, nebo co hůř, si to něchájí do konce života ve složce Stažené soubory.
U mě je to trochu jinak, vše co stáhnu si stahuju do Stažených souborů, kde si to přesunu do podsložky podle toho co to je, např. Hudba. V té složce si to pak ještě vše přejmenuju, aby to nějak vypadalo, protože soubor staženej z netu má třeba formát 01-neco_neco-neco_dalsiho__original_mix.mp3. A tohle fakt v PC nechci. Je trochu vopruz tohle přejmenovávat po jednom souboru. Proto vám ukážu jak v Total Commanderu pomocí regulárních výrazů přejmenovat tyto soubory. Pokud regulární výrazy neumíte, nesnažte se je naučit, není to těžké, ale chce to trochu logického myšlení a taky trochu teorie.
Takže postup jak přejmenovat více souborů:

1) Otevřete si Total Commander a najeďte do složky, kde máte soubory, které chcete hromadně přejmenovat. Tyto soubory označte.


2) Poté stačí stiknout CTRL+M, nebo jít přes menu na Soubor > Hromadné přejmenování. Otevře se vám pro vás možná neznámé okno.

V tomto okně bude pro vás nejdůležitější sloupec Původní název a Nový název. Dále také sekce Najít a nahradit. Ostatní věci jsou taky fajn, dá se třebas očíslovat hromadně soubory od např. 000001 až do 999999 apod.

3) Nejprve odstraníme čísla ze začátku souborů. Napište do sekce Najít toto:
^([\d\-]+)
Pole Nahradit za, nechte "Vymazat". A zaškrtněte Reg. výraz.

Pak stačí kliknout na Spustit. Tím provedeme změny, které jsme udělali.
Dál neklikejte na Zavřít, ale klikněte vlevo od tlačítka Spustit na tlačítko se zpětnou šipkou.

4) Dále, hlavně pokud se jedná o písničky, tak většinou bývá text v závorce napsaný po dvou podtržítkách a bez závorek. Toto upravíme napsáním reguláru do pole Najít:
__([\w\d\_\-]+)\.([\w\d]+)$
a do pole Nahradit za napíšeme:
($1).$2
pozn. je tam mezera na začátku


A zase klikneme na Spustit a tlačítko se šipkou zpět.

5) Nahradíme pomlčky za mezeru a pomlčku a to tak, že nejdříve napíšeme do Najít pomlčku:
([^\s]+)\-([^\s]+)
a Nahradit za:
$1 - $2
Spustit > Zpět

6) Už to vypadá lépe co? Napište do pole Najít podtržítko a do pole Nahradit za napište mezeru, zaškrtávátko Reg. výraz odškrtněte. Dejte Spustit a zase tu zpětnou šipku.

7) V posledním kroku vymažte pole Najít a Nahradit za. V sekci Velikost písmen vyberte První Písmeno Slov Velké a dejte Spustit a pak Zavřít.

Hotovo, máte soubory rychle a "snadno" přejmenované do nějakého přijatelnějšího tvaru. Používám tohle mraky let a zatím jsem nenašel nic lepšího. Můžete se to na první pohled zdát zdlouhavé, ale jakmile se to člověk naučí, tak to ušetří mnoho času a nervů.

15 komentářů:

  1. Moc díky. Tenhle návod jsem hledal hodně dlouho. Dobrá práce.

    OdpovědětSmazat
  2. Není zač, v příkladu je dost specifický způsob regulárních výrazů, proto když někdo bude chtít, napíšu podle příkladu jakýkoliv výraz ;-)

    OdpovědětSmazat
    Odpovědi
    1. TCM mi nakonec odmítne přejmenovat soubory označené tučně. Lze s tím něco udělat? Děkuji. Jirka

      Smazat
    2. Nevím, co znamená tučně označené soubory. Screen by možná pomohl.

      Smazat
  3. Zajímavý článek, také TCM používám ale zatím jsem nepřišel na to jak odstranit diakritiku za znaky bez diakritiky. Nějaký tip?

    OdpovědětSmazat
  4. Roman: Ahoj, nahradit diakritiku za jakýkoliv jeden znak, to bych uměl. Ale nahradit něco v UTF-8 za znak v ASCII, to neumím bohužel. Resp. to neumím pomocí regulárních výrazů.

    OdpovědětSmazat
    Odpovědi
    1. Už jsem to našel, najdete taky v článku který se mi mimo daný tip na odstranění diakritiky jeví jako velmi užitečný

      http://extrawindows.cnews.cz/dvacet-tipu-pro-total-commander

      Smazat
    2. Tento komentář byl odstraněn autorem.

      Smazat
  5. Ale samozřejmě díky za přínosný článek, hodím si Vás do RSS :)

    OdpovědětSmazat
  6. Ještě bych doplnil tento odkaz, většina věcí je jasná (pro toho kdo v nějaké míře ovládá REGEXPy, ale chování v TCM není zcela totožné jako v PHP, viz subreference $cislo, subvyraz ve vyrazu \cislo (v PHP to jde i přes dolar atd.) :-) no, jdu si to pročíst a zase prgat :/

    Hezký večer, práci zdar ;D

    OdpovědětSmazat
  7. Ach jo, tak ten odkaz (únava a přepracování je hrozná sv*ně)

    http://total-commander.eu/ceska-napoveda/regularni-vyrazy

    OdpovědětSmazat
  8. Super, dekuji na 1000x.. Hodně jste mi pomohli...

    OdpovědětSmazat
  9. TCM mi nakonec odmítne přejmenovat soubory označené tučně. Lze s tím něco dělat? Jirka

    OdpovědětSmazat
  10. Skvělé řešení s minimální cestou odporu. Doteď jsem řešil hromadná přejmenování primitivněj (počet znaků od x do y a podobně), tohle je o level dál. Snad se mi podaří tyto postupy použít ve FreeCommanderu, se kterým normálně pracuju

    OdpovědětSmazat

 
]]>