kopieren von einer dateiliste

Post Reply
Message
Author
pischti
Posts: 27
Joined: 05. Mar 2002 10:13

kopieren von einer dateiliste

#1 Post by pischti »

hallo,
ich habe in einer log-datei die pfadangabe von einigen dateien gespeichert.
jetzt möchte ich aufgrund des inhaltes einen kopiervorgang starten. (z.b. mit cp oder oder gleich packen mit zip)
das klappt auch super:
z.b.
zip /Backup/archiv.zip `cat log-datei`

jetzt tritt aber das problem auf, wenn in im datei-namen sonderzeichen oder leerzeichen auftreten
z.b. (auszug aus log-datei)

/home/nutzer/test.txt
/home/nutzer/test von heute.txt (leerzeichen im namen)
/home/nutzer/test'von`heute.txt (hochkomma im namen)

da fliegt mir das ding um die ohren. ich hab mich da schon mal mit
| xargs -iXX echo 'XX'
probiert, das haut das dann zwar mit den leerzeichen hin, aber die hochkommas machen da wieder problem.

hat jemand eine idee?

Jochen

Re: kopieren von einer dateiliste

#2 Post by Jochen »

xargs war schon der richtige Ansatz:<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">tr '\<!--no-->012' '\<!--no-->0' <log-datei | xargs -0 zip /Backup/archiv.zip</font><hr></pre></blockquote>Die Option "-0" sagt dem xargs, dass er null-terminierte Zeichenketten erwarten soll, wie sie beispielsweise auch GNU-find mit der Option "-print0" erzeugt. Damit die Eingabe auch so aussieht, werden mittels tr die Newlines in der Logdatei durch ASCII-NUL ersetzt.

Jochen

Post Reply