ls -t

D

Das C

Jungspund
Ich möchte ein Unix Script in Perl portieren.
Der Unix-Script enthält nachfolgende 2 Zeilen.
Gibt es ein Unterschied zwischen diese zeilen, oder machen sie das gleiche?

ls -t $dir | grep ${Test}.2 | head -n 1)

ls -t $dir/${Test}.2* | head -n 1
 
Probier es doch mal aus, aber lass die Klammer weg:

Code:
dir=.
Test=MeineDatei
touch MeineDatei.20060819
touch MeineDatei.20060820
touch MeineDatei.20060821
touch DiesIstMeineDatei.20060821
ls -t $dir | grep ${Test}.2 | head -n 1
ls -t $dir/${Test}.2* | head -n 1

Gruß Hille
 
Das C schrieb:
Ich möchte ein Unix Script in Perl portieren.
Der Unix-Script enthält nachfolgende 2 Zeilen.
Gibt es ein Unterschied zwischen diese zeilen, oder machen sie das gleiche?

ls -t $dir | grep ${Test}.2 | head -n 1)

ls -t $dir/${Test}.2* | head -n 1

Man sollte beachten, dass im 2. Fall die Shell $dir/${Test}.2* auflöst und dies dann an ls übergibt. Wenn keine Files/Dirs vorhanden, auf die $dir/${Test}.2* matcht, gibts ne Fehlermeldung von ls.

Weiterhin gibt das 1. Kommando nur das File (ohne Verzeichnis) aus, während das 2. Kommando $dir/File ausgibt.

Gruss, Xanti
 
Zuletzt bearbeitet:

Ähnliche Themen

Script pausieren bis Bedingung erfüllt ist

Skript soll nicht doppelt laufen... kill pkill pid cron

script sshpass

Nginx als Reverse Proxy für Nextcloud und Emby

Dateiinhalt verdoppeln

Zurück
Oben