Hi,
als Linux-Neuling habe ich ein kleines Problem:
ich muss immer mal wieder eine bestimmte Datei entpacken: z.b: test010203.zip
ursprünglich hatte ich das mit der gleichen datei normal mit unzip entpackt: unzip -o test010203.zip -d /......usw
Da sich nun der Dateiname immer ändert könnte das auch ein Script übernehmen. Leider habe ich keine Ahnung wo ich da ansetze.
Bin für jeden Tipp dankbar.
Gruß
Bernd
Script zum Dateien entpacken
Re: Script zum Dateien entpacken
neue datei /usr/local/bin/NAME anlegen, inhalt:
#!/bin/sh
unzip -o $1 -d .
dann noch: chmod a+x NAME
das mit den optionen musst du halt anpassen, $1 ist der erste parameter, den du dem skript übergibst. wenn du mehrere parameter verwenden willst: $2, etc.
(am besten klappts als root <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle"> ).
da das skript so kurz ist, bietet sich auch ein alias an (dann brauchst du auch kein chmod...).
alias auspacken='unzip -d . -o'
(sofern die parameter so richtig sind -- ich kenne/verwende unzip nicht).
#!/bin/sh
unzip -o $1 -d .
dann noch: chmod a+x NAME
das mit den optionen musst du halt anpassen, $1 ist der erste parameter, den du dem skript übergibst. wenn du mehrere parameter verwenden willst: $2, etc.
(am besten klappts als root <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle"> ).
da das skript so kurz ist, bietet sich auch ein alias an (dann brauchst du auch kein chmod...).
alias auspacken='unzip -d . -o'
(sofern die parameter so richtig sind -- ich kenne/verwende unzip nicht).
Re: Script zum Dateien entpacken
Soweit gut mit der Variablen.
in meinem Verzeichnis stehen nun folgende dateien drin
test010203.zip
test010204.zip
test010205.zip
Ich wollte eigentlich immer nur die neueste datei entpacken.
Übrigens sind die Dateinamen der Nummer nach nicht aufsteigend. Als Merkmal das die Datei als die neueste kennzeichnet, wäre dann noch das neueste Datum der Datei.
Schon geht das los mit dem Problem !!??
in meinem Verzeichnis stehen nun folgende dateien drin
test010203.zip
test010204.zip
test010205.zip
Ich wollte eigentlich immer nur die neueste datei entpacken.
Übrigens sind die Dateinamen der Nummer nach nicht aufsteigend. Als Merkmal das die Datei als die neueste kennzeichnet, wäre dann noch das neueste Datum der Datei.
Schon geht das los mit dem Problem !!??
Re: Script zum Dateien entpacken
in diesem fall macht es natürlich keinen sinn, einen filenamen als parameter zu übergeben, denn das skript muss ja selber die datei ermitteln.
mit "ls --sort=time *.zip" gibst du die zip-files nach datum sortiert aus (die neuste zuerst). davon nimmst du einfach die erste.
mit "ls --sort=time *.zip" gibst du die zip-files nach datum sortiert aus (die neuste zuerst). davon nimmst du einfach die erste.
Re: Script zum Dateien entpacken
das script würde dann also etwa so aussehen
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/bin/sh
set `ls -t $1.zip`
# in $1 steht jetzt die neueste datei
unzip $1
</font><hr></pre></blockquote>
mit aufruf "SKRIPT test*" entpackt er die neueste datei, wenn du den genauen namen angibst ("SKRIPT test010204") entpackt er genau diese.
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/bin/sh
set `ls -t $1.zip`
# in $1 steht jetzt die neueste datei
unzip $1
</font><hr></pre></blockquote>
mit aufruf "SKRIPT test*" entpackt er die neueste datei, wenn du den genauen namen angibst ("SKRIPT test010204") entpackt er genau diese.
Re: Script zum Dateien entpacken
Hi,
Danke für die schnelle Hilfe.
Genau so habe ich mir die Lösung vorgestellt - Thanks
Danke für die schnelle Hilfe.
Genau so habe ich mir die Lösung vorgestellt - Thanks
Re: Script zum Dateien entpacken
Leider schlechte Nachrichten:
Wenn ich das Script sp laufen lasse, passiert leider nichts.
die ausgabe von ls -t lautet
.. . datei1.zip datei2.zip
Danach findet unzip $1 nicht mehr.
Bin nun völlig durch den Wind
Wenn ich das Script sp laufen lasse, passiert leider nichts.
die ausgabe von ls -t lautet
.. . datei1.zip datei2.zip
Danach findet unzip $1 nicht mehr.
Bin nun völlig durch den Wind
Re: Script zum Dateien entpacken
Hab noch mal gebastelt und bin dann doch noch fündig geworden:
script muss laute:
*********************************
#!/bin/sh
set `ls -t1A $1`
unzip $1
*********************************
Wenn ich mal gross bin, kapier ich das vielleicht auch noch.
script muss laute:
*********************************
#!/bin/sh
set `ls -t1A $1`
unzip $1
*********************************
Wenn ich mal gross bin, kapier ich das vielleicht auch noch.