<CITE>Důležitá poznámka k použití find: Jeho použití obecně není odolné proti neobvyklým jménům souborů, obsahujícím mezery, uvozovky, apostrofy či znaky konce řádku. Tento problém nelze dokonale ošetřit.</CITE>
To autor nepozna find -print0 a xargs -0 ktore funguju s kazdym menom suboru? (subory sa tu oddeluju nulovymi znakmi ktore pokial viem nemozu byt v mene suboru nikde)
Názory k článku
Drobnosti ze shellového zápisníku (2)
neodolny find
celé vláknoRe: neodolny find
celé vláknoXargs se dobře používá na hromadné akce. S přejmenováním je to však horší - tam by pomohlo něco, jako -printescape.
Re: neodolny find
celé vláknoUvazte
find . -type f -print0 | filtr | xargs -0 -n 2 mv
kde filtr provadi nasledujici konverzi
jmeno1\0 -> jmeno1\0nove_jmeno1\0
Re: neodolny find
celé vláknoNarazil jsem na vas prispevek a prikaz, ktery uvadite, dela presne to, co bych potreboval (hromadne prejmenovat adresare, ktere obsahuji mezery ve jmenech), jenom nemuzu prijit na to, jak a jaky filtr pouzit, abych xargs podstrcil pozadovany retezec (napr. "03 dir\02003 dir\0"). Neporadil byste? Diky.
zmena koncovky u fileku
celé vláknoawk je ok, ale sh (bash) podporuje primou zamenu prostrednictvim nahrady promene: ${a%%z}na:
for a in *.JPG ; do mv $a ${a%%JPG}jpg; done
ovsem syntaxe je silenaaaa
Prejmenovavani pomoci mc
celé vláknoMyslim, ze na prejmenovani vice souboru je vhodny mc, napriklad oznacene soubory prvni_xx.pdf prejmenujete na druhy_xx.pdf pomoci Move (F6):
Move 100 files with source mask:
prvni_*.pdf
to:
druhy_\1.pdf
La'd"a
Re: Prejmenovavani pomoci mc
celé vláknoJeste lepsi je utilitka (utilitky) mmv.
Marble
Re: Prejmenovavani pomoci mc
celé vláknoHmm, ale kde je sehnat (hyperlink). Diky. J.
Re: Prejmenovavani pomoci mc
celé vláknoNo, existuji balicky k distribucim (urcite Debian a SUSE, ostatni nevim). Jinak zdrojaky jsou ruzne po netu (napr. http://www.ripco.net/download/unix/misc/), ale kdyz jsem to ted zkousel kompilovat, tak se to tvarilo dost divne... :(
Marble
Prejmenovani ...
celé vláknoA nezapominajte na "rename" - spousta veci s nim jde uzasne snadno
latin2 -> ASCII
celé vláknoPro interaktivni konverzi z ISO-8859-2 do ASCII bych
spis pouzil
recode -f l2..us
ale uznavam, ze ve scriptech bude tr rychlejsi.
Nejem přejmenováváním je člověk živ
celé vláknoJá řešil jiný problém, jak překonvertovat všechny obrázky v adresáři pomocí programu convert (z balíku ImageMagick). Stále nic, až jsem přečetl tento článek a příspěvky. A zde je výsledek :
#!/bin/bash
# konvertuje všechny obrázku daného typu v adresáři
# syntaxe např: my_convert eps jpg - zkonvertuje soubory *.eps na *.jpg
# jména souborů zůstanou zachována (až na příponu)
for a in *.$1 ; do convert $a ${a%%$1}$2; done
Takže více takových článků a příspěvků k nim.

