Mass renaming
Mass renaming
Hejsan
Jag har en kamera som sparar bilder i ett thumbnail format, de heter exempelvis "20110402095.jpg_56x42"
nu har jag tänkt att skriva ett cronjob på det här, jag laddar upp korten till min server, via diverse olika sett.
Jag vill att cron ska för det första döpa om bilden från "20110402095.jpg_56x42" till "20110402095-thumb.jpg"
jag laddar alltså upp en fullstor bild och en thumb-bild, men vill ha lite ordning på det hela.
mitt php-script vill ha en thumb av "bild-1" för att sen kunna visa "bild-1" i stor skala.
Jag vet att jag är dålig på att förklara , kan någon hjälpa ändå kanske? har givetvis läst igenom manualen på "sed"
Men känner att ingenting fungerar idag.
Du kan få ett shell hos mig så slipper vi krångla.
Tack på förhand Micke
Jag har en kamera som sparar bilder i ett thumbnail format, de heter exempelvis "20110402095.jpg_56x42"
nu har jag tänkt att skriva ett cronjob på det här, jag laddar upp korten till min server, via diverse olika sett.
Jag vill att cron ska för det första döpa om bilden från "20110402095.jpg_56x42" till "20110402095-thumb.jpg"
jag laddar alltså upp en fullstor bild och en thumb-bild, men vill ha lite ordning på det hela.
mitt php-script vill ha en thumb av "bild-1" för att sen kunna visa "bild-1" i stor skala.
Jag vet att jag är dålig på att förklara , kan någon hjälpa ändå kanske? har givetvis läst igenom manualen på "sed"
Men känner att ingenting fungerar idag.
Du kan få ett shell hos mig så slipper vi krångla.
Tack på förhand Micke
Re: Mass renaming
Vet inte riktigt vad du vill göra, men massomdöpning gör man normalt med rename.
Re: Mass renaming
Kan du inte fixa något script som loopar genom "*.jpg_56x42" filerna och
tar var och en i tur och gör en vanlig rename efter lite stränghantering ?
tar var och en i tur och gör en vanlig rename efter lite stränghantering ?
-
- Inlägg: 8092
- Blev medlem: 18 januari 2009, 00:48:24
- Ort: Alvesta, Småland
Re: Mass renaming
for i in `ls *.jpg_56x42`; do mv $i `echo $i | sed 's/jpg_56x42/jpg/g'`;done
ja eller vad du nu ville göra.
ja eller vad du nu ville göra.
Re: Mass renaming
Kod: Markera allt
ls *.jpg_56x42 | perl -wne 'chomp;my $i=$_;s/^(\d+)(\.jpg).+$/$1-thumb$2/g;rename $i,$_ or warn "$!: $i"'
Re: Mass renaming
När jag ska göra nåt sånt där som jag inte riktigt vet hur man gör så jobbar jag i perl och tar ett steg i taget. Det funkar ju med sed-syntax i perl så just den delen att komma fram till filnamnen kan man testa sig fram med (köra print på filnamnen istället för rename) tills det blir rätt.
Det går, som några har visat här, att göra det mer kompakt, men jag tycker det är viktigare att man känner att man har koll på hur grejerna funkar än att det ser kompakt ut.
Det går, som några har visat här, att göra det mer kompakt, men jag tycker det är viktigare att man känner att man har koll på hur grejerna funkar än att det ser kompakt ut.
Re: Mass renaming
Du kan kolla mitt "Foto on the go" script, huvudsakligen gjort för att skala om och lägga (C) bild i bilden som skalades om.
http://lgrfbs.dyndns.org/sef/FotoOnGo.tar.gz
http://lgrfbs.dyndns.org/sef/FotoOnGo.tar.gz
Re: Mass renaming
for x in *.jpg ; do mv $x $(echo $x | sed -e 's:.jpg.*$:-thumb.jpg:') ; doneRofhök skrev:Jag vill att cron ska för det första döpa om bilden från "20110402095.jpg_56x42" till "20110402095-thumb.jpg"
Om filnamnen någon gång kommer innehålla mellanslag så kapsla in alla argument med citationstecken (").