Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: peto3223 01. 05. 2017, 19:44:02
-
Dobry den
Potreboval by som pomoct ako vybrat urcity text z pomenovania suboru. Priklad pomenovanie suboru vyzera
@nieco #miami #moscow #turkey #italiangirl #polishgirl #ibiza#2#nitra #ny#zilina #dutchgirl #latob #ostrava #s.jpg
a potreboval by som to premenovat aby subor ostal vzdy pomenovany len @nieco zvysku textu a koncovky jpg . Dufam ze ma chapete vedeli by ste mi poradit ?
Dakujem
-
mozna tohle pomuze ?
http://stackoverflow.com/questions/965053/extract-filename-and-extension-in-bash (http://stackoverflow.com/questions/965053/extract-filename-and-extension-in-bash)
-
pokud ty soubory obsahují mezery, tak je bezpečnější to nedělat v bashi
ls -1 *jpg | perl -ne 'chomp; $old = $_; s/\s.*/.jpg/; rename($old, $_);'
-
nebo takto
perl -e 'while(<*jpg>){$old = $_; s/\s.*/.jpg/; rename($old, $_);}'
-
pokud ty soubory obsahují mezery, tak je bezpečnější to nedělat v bashi
ls -1 *jpg | perl -ne 'chomp; $old = $_; s/\s.*/.jpg/; rename($old, $_);'
funguje to :) len by som potreboval ze v niektorych textoch mam aj pridane pred @ nieco taketo 🔥 ,💥 ,❤ vedel by si mi stym poradit ? :) dakujem :)
-
pokud ty soubory obsahují mezery, tak je bezpečnější to nedělat v bashi
ls -1 *jpg | perl -ne 'chomp; $old = $_; s/\s.*/.jpg/; rename($old, $_);'
funguje to :) len by som potreboval ze v niektorych textoch mam aj pridane pred @ nieco taketo 🔥 ,💥 ,❤ vedel by si mi stym poradit ? :) dakujem :)
na 99% si vymýšlíš, ale jestli to opravdu potřebuješ tak
perl -e 'while(<*jpg>){$old = $_; s/^[^@]*//; s/\s.*/.jpg/; rename($old, $_);}'
-
pokud ty soubory obsahují mezery, tak je bezpečnější to nedělat v bashi
ls -1 *jpg | perl -ne 'chomp; $old = $_; s/\s.*/.jpg/; rename($old, $_);'
funguje to :) len by som potreboval ze v niektorych textoch mam aj pridane pred @ nieco taketo 🔥 ,💥 ,❤ vedel by si mi stym poradit ? :) dakujem :)
na 99% si vymýšlíš, ale jestli to opravdu potřebuješ tak
perl -e 'while(<*jpg>){$old = $_; s/^[^@]*//; s/\s.*/.jpg/; rename($old, $_);}'
Velmi pekne dakujem :)
-
Vím, že je to už vyřešeno, ale nemůžu si odpustit pure bash řešení :D
ls | while read a; do b="${a%% *}"; c="${a##*.}"; mv -- "${a}" "${b}.${c}";done