tar will nicht mehr

goegg-art

goegg-art

Mitglied
Thread Starter
Dabei seit
04.08.2005
Beiträge
34
Reaktionspunkte
2
Hallo zusammen,

hallo

ich wollte mir mit Automator ein BackUp Tool basteln..
dazu hätte ich tar benutzen wollen in form von:
Code:
tar czvf sicherung_`date +%y%m%d`.tar.gz -T auswahlbackup.txt
auswahlbackup.txt enthält:
Code:
/Users/ich/file1.txt
/Users/ich/ordner1
aus dem Terminal heraus hat das bisher auch immer bestens funktioniert.
Als ich das jedoch mit Automators Action "Shell Script ausführen" probierte
kam erstmals folgende fehlermeldung:
Code:
tar: \376\377: Cannot stat: Invalid argument
tar: Error exit delayed from previous errors
ebenso wenn ich es als .sh file angebe oder per
"AppleScript ausführen"
Code:
do shell script "/usr/bin/tar czvf sicherung_`date +%y%m%d`.tar.gz -T /Users/ich/auswahlbackup.txt"
versuchte.

seither geht das auch aus dem Terminal nicht mehr.. d.h. immer die selbe Fehlermeldung.
Hat jemand eine Idee was genau ich da verbockt haben könnte?
und was die fehlermeldungen zu bedeuten haben?
 
goegg-art schrieb:

es scheint mir so als würden einige unicode zeichen das tar verwirren bei den filenamen...
als überprüf mal die text-datei mit den files, ob die nur reine ascii zeichen hat...
 
Muss tar nicht auch immer von / aus gestartet werden bei solchen Aktionen? Ich meine erst ein cd / dann dein tar Befehl und in der txt Datei nimmst du die slashes am Anfang weg.
 
goegg-art schrieb:
Hat jemand eine Idee was genau ich da verbockt haben könnte?
und was die fehlermeldungen zu bedeuten haben?
man tar

Code:
--verbose    Lists files written to archive with --create or extracted with --extract; lists file protection information along with file names with --list.

hth

Gruss von IceHouse
 
hi,
oneOeight schrieb:
es scheint mir so als würden einige unicode zeichen das tar verwirren bei den filenamen...
als überprüf mal die text-datei mit den files, ob die nur reine ascii zeichen hat...
Hmm das brachte mich auf die Idee, das .txt file per "pico" anzusehen
und siehe da statt:
Code:
/Users/ich/test.txt
/Users/ich/testordner
steht da:
Code:
??^@/^@U^@s^@e^@r^@s^@/^@i^@c^@h^@/^@t^@e^@s^@t^@.^@t^@x^@t^@
^@/^@U^@s^@e^@r^@s^@/^@i^@c^@h^@/^@t^@e^@s^@t^@o^@r^@d^@n^@e^@r
Nun habe ich bemerkt das durch Automator erstellte .txt file ist irgendwie defekt sind, denn da entstehen immer nur solche codes wie oben...
Zudem habe ich den fehler gemacht und habe den ganzen pfad angegeben
Code:
/Users/ich/test.txt
statt nur die Datei
Code:
test.txt
den tipp mit dem cd brachte mich darauf..

Vielen Dank Euch allen

Leider ist aber somit mein versuch mit Automator gescheitert
da wollte ich erreichen das die Ausgewählten files im Finderfenster
in ein .txt file geschrieben werden und dann diese .txt als Liste
für "tar" nehmen.. Quasi ein AuswahBackUp ;-)
für weitere tips dafür wäre ich auch nicht böse, oder sollte ich das neu posten in einem anderen Forenbereich?

GoeGG-ArT
 
goegg-art schrieb:
Nun habe ich bemerkt das durch Automator erstellte .txt file ist irgendwie defekt sind, denn da entstehen immer nur solche codes wie oben...

die sind nicht defekt, sondern sind unicode text files...
du brauchst aber für tar reine ascii text files...
womit speicherst du die denn in automator?
kann man da nicht angeben, dass das reiner ascii text sein soll?
 
hi

nun ich dachte mir das so:

  1. * Ausgewählte Finder Objekte abfragen
    * Neue Textdatei / Name "auswahlbackup.txt" / Speichern im "Homeordner"
    * Apple Script ausführen siehe code
Code:
do shell script "/usr/bin/tar czvf auswahlsicherung_`date +%y%m%d`.tar.gz -T /auswahlbackup.txt"

nur leider gibt er mir so den ganzen pfad an "/Users/ich/filename.txt" und so weiter
und es wird kein ascii sondern unicode

scheint als müsste ich das im AppleScript selbst probieren
oder gibt es terminal möglichkeiten (für eher anfänger) um
eine .txt datei mit ausgewählten finderobjekten zu erstellen?

(sorry für das komplizierte schreiben das ich teilweise habe lol)

gruss
GoeGG-Art
 
textedit hat doch die möglichkeit in reine textdateien zu wandeln...
 
per Automator leider nicht.. oder ich habe es nicht gefunden :-(

aber gibt es nicht ein Terminal befehl der das ändern könnte?
unicode 2 ascii
 
goegg-art schrieb:
per Automator leider nicht.. oder ich habe es nicht gefunden :-(

aber gibt es nicht ein Terminal befehl der das ändern könnte?
unicode 2 ascii

Ich weiss nicht, ob der Mac "recode" hat. Das wandelt alles in jedes.

Gruß,
Ratti
 
ratti schrieb:
Ich weiss nicht, ob der Mac "recode" hat. Das wandelt alles in jedes.

Gruß,
Ratti

Meinst du so?

Code:
powerbook:~ schasche$ recode
-bash: recode: command not found
 
SchaSche schrieb:
Meinst du so?

Code:
powerbook:~ schasche$ recode
-bash: recode: command not found

Jepp. Schade, dann haben sie's nicht mit draufgepackt. Ist eine nette Software von GNU.org:

> echo "Jörg" | recode utf8..html
Jörg

Ich weiss jetzt natürlich nicht, ob's dein Problem gelöst hätte, aber recode ist irre mächtig und unterstützt Codierungen, von denen ich niemals mal was gehört habe, und ein paar Goodies dazu. Falls du also mal direkt von IBM-EBDIC nach AtariST konvertieren musst... :)

Gruß,
Ratti
 
textutil kann auch umkodieren mit -encoding...

textutil -encoding 30 -convert txt file
(30 ist macroman)
 
hallo

schade ja recode ist nicht vorhanden..

aber das mit textutil zu machen ist mir auch sympatischer..
doch leider vertehe ich die man nicht so genau... :rolleyes:

% textutil -encoding 30 -convert auswahlbackup.txt

ergibt
Invalid output format.

stehe wohl auf dem schlauch...
wie baut sich das zusammen... tips

und sorry meine unwissenheit
umso mehr freut mich Eure tatkräftige Hilfe hier im Forum

DANKE an alle schon mal

GöGG
 
textutil -encoding 30 -convert txt auswahlbackup.txt

du hast das txt hinter dem convert übersehen...
 
so nach langem gebastel gebe ich es auf..
den 1. will es einfach nicht so wie ich will :)
und 2. habe ich einen "hint" gefunden (Automator.workflow)

der genau das macht... aber mit einem Shell-Script das ich so nie hinbekommen hätte :-(
schritt1: "Angegebene Finder Objekte abfragen"
schritt2: "Shell-Skript ausführen"
Code:
for f in "$@"
do
    path=`dirname "$f"`
    file=`basename "$f"`
    cd "$path"
    tar czf "$file.tgz" "$file"
done

hier der genannte "hint" für jene die das auch interessiert:
Hint auf "macosxhints.ch"

Danke an alle die hier Geantwortet haben, sicherlich kann ich all diese Neu gelernten Dinge mal brauchen..

Gruss
GöGG
 
hmm

zu früh gefreut/gepostet.

leider macht dieser workflow aus jedem einzelnen ein .tgz

da ich hier wohl immer noch im richtigen Forum bin frage ich gleich hier weiter wenn`S recht ist...

Also:
Wer kann mir helfen?
Wie muss ich das shell-script abändern um eine Gruppe der files zu bekommen also das es nicht einzelne .tgz gibt sondern ein Packet
der ausgewählten files.. :rolleyes: gibt?
 
zum "Umkodieren" könnte ich noch 'iconv' anbieten:

man iconv
zeigt, wie es gemacht wird.

Abgesehen davon:
Warum so umständlich mit Automator arbeiten?
Mach ein ausführbares Shellskript, speichere es mit der Endung .command und führe es per Doppelklick aus.

HTH
 
maceis schrieb:
Warum so umständlich mit Automator arbeiten?
Mach ein ausführbares Shellskript, speichere es mit der Endung .command und führe es per Doppelklick aus.

HTH
thx werde das mal ansehen.

in Automator weil ich will in Finderfenster verschiedene Objekte auswählen
können und darüber das Automator script laufen lassen das mir ein Archiv
aus den ausgewählten Objekten zu machen.

Deine Version löst lediglich das Script aus..
 
Ungetestet:
Code:
for f in "$@"
do
        filelist="$filelist $f"
done
tar czf archiv.tgz $filelist

HTH
 
Zurück
Oben Unten