/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
batch rename ?
Fra : Bjarne Jensen


Dato : 02-11-07 12:52

Jeg har et dir fyldt med pdf filer som hedder 01.pdf, 02.pdf til xx.pdf.
(to-cifrede tal, linært stigende til et variabelt maximum +.pdf)

Nu vil jeg gerne rename alle filer så den nummeriske rækkefølge bliver
omvendt....?

Mvh / Bjarne

(er "script-kiddie" et nedsættende udtryk?)

 
 
Thorbjørn Ravn Ander~ (02-11-2007)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 02-11-07 13:05

Bjarne Jensen <bjarne.b.jensen@gmail.com> writes:

> Nu vil jeg gerne rename alle filer så den nummeriske rækkefølge bliver
> omvendt....?

Tror det måske var en bedre ide hvis du beskriver hvilket problem du
gerne vil løse på den måde?
--
Thorbjørn Ravn Andersen

Klaus Alexander Seis~ (02-11-2007)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 02-11-07 14:54

Thorbjørn Ravn Andersen skrev:

>> Nu vil jeg gerne rename alle filer så den nummeriske række-
>> følge bliver omvendt....?
>
> Tror det måske var en bedre ide hvis du beskriver hvilket
> problem du gerne vil løse på den måde?

Jeg læser opgaven således at hvis Bjarne har filerne 0[1-4].pdf, skal
de omdøbes således:

   01.pdf -> 04.pdf
   02.pdf -> 03.pdf
   03.pdf -> 02.pdf
   04.pdf -> 01.pdf

Mvh,

--
Klaus Alexander Seistrup
http://klaus.seistrup.dk/

Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 14:58

Klaus Alexander Seistrup skrev:

> Jeg læser opgaven således at hvis Bjarne har filerne 0[1-4].pdf, skal
> de omdøbes således:
>
>    01.pdf -> 04.pdf
>    02.pdf -> 03.pdf
>    03.pdf -> 02.pdf
>    04.pdf -> 01.pdf




Nemlig!


Mvh / Bjarne

Claus Rasmussen (02-11-2007)
Kommentar
Fra : Claus Rasmussen


Dato : 02-11-07 15:54

Bjarne Jensen wrote:

> Klaus Alexander Seistrup skrev:
>
>> Jeg læser opgaven således at hvis Bjarne har filerne 0[1-4].pdf, skal
>> de omdøbes således:
>>
>> 01.pdf -> 04.pdf
>> 02.pdf -> 03.pdf
>> 03.pdf -> 02.pdf
>> 04.pdf -> 01.pdf

Så kan flg. løse problemet - de omdøbte filer bliver placeret i
kataloget 'new':

NEW_DIR=new
mkdir $NEW_DIR || exit 1

max=$(ls *.pdf | tail -1 | sed -e 's/^0*//' -e 's/\.pdf//')

for file in $(ls *.pdf)
do index=$(echo $file | sed -e 's/^0*//' -e 's/\.pdf//')
new_file=$(printf "$NEW_DIR/%02d.pdf" $(( $max - $index + 1)) )
cp -a $file $new_file
done


Hvis der er mere end 100 filer, skal '%02d' erstattes med '%03d'.

-Claus


Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 18:18

Det var tæt på, Claus!

Jeg slettede bare "+ 1" i "$(( $max - $index + 1)) )
ellers blev nummeret 1 for høj.


Mange tak !

Mvh / Bjarne


PS: Hvordan får man ` (back quote) ud af et standard dansk tastatur ?

Kent Friis (02-11-2007)
Kommentar
Fra : Kent Friis


Dato : 02-11-07 18:22

Den Fri, 02 Nov 2007 18:18:22 +0100 skrev Bjarne Jensen:
> Det var tæt på, Claus!
>
> Jeg slettede bare "+ 1" i "$(( $max - $index + 1)) )
> ellers blev nummeret 1 for høj.
>
>
> Mange tak !
>
> Mvh / Bjarne
>
>
> PS: Hvordan får man ` (back quote) ud af et standard dansk tastatur ?

Normalt med shift + tasten til venstre for backspace ( |'` ),
efterfulgt af et mellemrum.

(Af ukendte årsager virker det ikke på mit tastatur idag (jeg ved ikke
om det nogensinde har virket, jeg tror aldrig jeg bruger den), det
gør shift + tasten fire gange i træk til gengæld - så hvis det første
ikke virker, så prøv denne metode).

Mvh
Kent
--
"So there I was surrounded by all these scary creatures
They were even scarier than what Microsoft call features"
- C64Mafia: Forbidden Forest (Don't Go Walking Slow).

Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 18:31

Kent Friis skrev:
> Normalt med shift + tasten til venstre for backspace ( |'` ),
> efterfulgt af et mellemrum.

Ja, det er så nemt når mare man kender en der hedder USENET.

> (Af ukendte årsager ...<zipped>

Kender godt fornemmelsen ;)


Mvh / Bjarne


Jørgen Heesche (02-11-2007)
Kommentar
Fra : Jørgen Heesche


Dato : 02-11-07 21:51

Kent Friis wrote:

>>
>> PS: Hvordan får man ` (back quote) ud af et standard dansk tastatur ?
>
> Normalt med shift + tasten til venstre for backspace ( |'` ),
> efterfulgt af et mellemrum.
>
> (Af ukendte årsager virker det ikke på mit tastatur idag (jeg ved ikke
> om det nogensinde har virket, jeg tror aldrig jeg bruger den), det
> gør shift + tasten fire gange i træk til gengæld - så hvis det første
> ikke virker, så prøv denne metode).
>
Den såkaldte "back quote" er et af flere mulige accenttegn.
Det er "dead keys". Se her: http://tldp.org/HOWTO/Danish-HOWTO-2.html
"dead keys" kan disables i x86Config under keyboard-konfigurationen
med option XkbVariant "nodeadkeys"


--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@webspeed.dk

Thorbjørn Ravn Ander~ (02-11-2007)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 02-11-07 15:01

Klaus Alexander Seistrup <klaus@seistrup.dk> writes:

> Jeg læser opgaven således at hvis Bjarne har filerne 0[1-4].pdf, skal
> de omdøbes således:
>
>    01.pdf -> 04.pdf
>    02.pdf -> 03.pdf
>    03.pdf -> 02.pdf
>    04.pdf -> 01.pdf

Det har jeg forstået, og det kan formentlig klares med et passende
perlscript der bruger rename.

Jeg går ud fra spørgsmålet er stillet som del i at løse et større
problem, og det er DET jeg spørger til (skal man bytte siderne om i en
udskrift af hensyn til en sær printer eller lignende).

--
Thorbjørn Ravn Andersen

Peter Dalgaard (02-11-2007)
Kommentar
Fra : Peter Dalgaard


Dato : 02-11-07 15:20

nospam0000@gmail.com (Thorbjørn Ravn Andersen) writes:

> Klaus Alexander Seistrup <klaus@seistrup.dk> writes:
>
>> Jeg læser opgaven således at hvis Bjarne har filerne 0[1-4].pdf, skal
>> de omdøbes således:
>>
>>    01.pdf -> 04.pdf
>>    02.pdf -> 03.pdf
>>    03.pdf -> 02.pdf
>>    04.pdf -> 01.pdf
>
> Det har jeg forstået, og det kan formentlig klares med et passende
> perlscript der bruger rename.
>
> Jeg går ud fra spørgsmålet er stillet som del i at løse et større
> problem, og det er DET jeg spørger til (skal man bytte siderne om i en
> udskrift af hensyn til en sær printer eller lignende).

Tja, jeg har det samme problem med mit gamle Canon filmkamera og
digitale fremkaldelser fordi den optager filmen "baglæns" ved at
trække hele filmen ud først og køre den tilbage i kassetten. Dvs.
billede 001 er det der er optaget sidst, osv.

--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907

Thorbjørn Ravn Ander~ (02-11-2007)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 02-11-07 17:31

Peter Dalgaard <p.dalgaard@biostat.ku.dk> writes:

> Tja, jeg har det samme problem med mit gamle Canon filmkamera og
> digitale fremkaldelser fordi den optager filmen "baglæns" ved at
> trække hele filmen ud først og køre den tilbage i kassetten. Dvs.
> billede 001 er det der er optaget sidst, osv.

Dit kamera optager billeder i PDF-format? Fiks sag der.
--
Thorbjørn Ravn Andersen

Peter Dalgaard (02-11-2007)
Kommentar
Fra : Peter Dalgaard


Dato : 02-11-07 17:52

nospam0000@gmail.com (Thorbjørn Ravn Andersen) writes:

> Peter Dalgaard <p.dalgaard@biostat.ku.dk> writes:
>
>> Tja, jeg har det samme problem med mit gamle Canon filmkamera og
>> digitale fremkaldelser fordi den optager filmen "baglæns" ved at
>> trække hele filmen ud først og køre den tilbage i kassetten. Dvs.
>> billede 001 er det der er optaget sidst, osv.
>
> Dit kamera optager billeder i PDF-format? Fiks sag der.

Og på filmkassetter?

Men nej, det er svjh .jpg der kommer tilbage fra laboratoriet i
omvendt nummerorden.


--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907

Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 15:27

Ah... det er pdf'er som jeg har scannet på en maskine med arkføder.
Det var ikke muligt at få "bag-siden" i den rigtige rækkefølge medmindre
jeg lavede manual fødning.

Mvh / Bjarne

Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 15:33

Det er pdf'er som jeg har scannet på en maskine med arkføder.

Lige-sidenumre i en fil og ulige i en anden.

Det var ikke muligt at få "bag-siden" i den rigtige rækkefølge medmindre
jeg lavede manual fødning.

Med pdftk har jeg skilt hver side ud og når jeg har fået dem omdøbt skal
de samles igen med pdftk.

Mvh / Bjarne

Klaus Alexander Seis~ (02-11-2007)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 02-11-07 15:48

Bjarne Jensen skrev:

> Med pdftk har jeg skilt hver side ud og når jeg har fået dem
> omdøbt skal de samles igen med pdftk.

Nu kender jeg ikke pdftk, men hvis den kan tage argumenter som viser
hvilke filer den skal bruge i hvaffor'n rækkefølge, kan du få den
omvendte rækkefølge med tac(1):

#v+
   $ seq 1 3
   1
   2
   3
   $ seq 1 3 | tac
   3
   2
   1
   $
#v-

I dit tilfælde kunne filerne i omvendt rækkefølge nævnes med

#v+
   $ ls [0-9][0-9].pdf | tac
#v-

Og måske samles med noget i retning af

#v+
   $ pdftk $(ls [0-9][0-9].pdf | tac) cat output samlet_omvendt.pdf
#v-

Hjælper det?

Mvh,

--
Klaus Alexander Seistrup
http://klaus.seistrup.dk/

Bjarne Jensen (02-11-2007)
Kommentar
Fra : Bjarne Jensen


Dato : 02-11-07 19:06

Klaus Alexander Seistrup skrev:

> Og måske samles med noget i retning af
>
>    $ pdftk $(ls [0-9][0-9].pdf | tac) cat output samlet_omvendt.pdf
>
> Hjælper det?

Det er jo elegant! Det der mangler er så lige at jeg skal have flettet
de ulige sider ind.

"Ulige" i betydningen "venstre", filerne for side 1 og 2 hedder som
udgangspunkt det samme -> 01.pdf

Men man kan jo splitte samlet_omvendt.pdf i enkeltsider igen og samle
den derfra.

Tak!

Mvh / Bjarne

Søg
Reklame
Statistik
Spørgsmål : 177493
Tips : 31966
Nyheder : 719565
Indlæg : 6408479
Brugere : 218886

Månedens bedste
Årets bedste
Sidste års bedste