variable in einem script auf Gültigkeit als Dateinamen testen

flappinski

flappinski

Foren As
Hallo,
da ich in meinem Script ein Argument als Teil des Namens für die Ausgabedatei verwende, bekomme ich gerne mal (weil ich die Argumentreihenfolge verwechsle) so Dateien wie "(1_daei1).txt". Das würde ich gerne verhindern. Im Moment lese ich den Outputnamen so ein:

name_out=${2:-Standard_out}

wie kann ich jetzt name_out darauf testen ob er gültig für einen Dateinamen ist?

Danke Stephan
 
if [ -f $name_out ]
then
echo "Datei existiert"
fi
 
O.k. Entschuldigung:
Dateiname sollte aus Buchstaben, Zahlen und "_" bestehen. Ausserdem sollte das erste Zeichen ein Buchstabe sein. So eine Bedingung würde mir jedenfalls reichen.
Vielen Dank,
Stephan
 
Für die Bash (Deine verwendete Shell bleibt aus unerklärlichen Gründen ein Geheimnis)
Schnelle Lösung mit egrep:
Code:
A=2_datei.txt;
echo ${A%*.txt}|egrep -q "^[0-9]{1,}[0-9a-z_]*$" && echo "$A ist als Dateiname ok"||echo Fehler $?

Wolfgang
 

Ähnliche Themen

Hilfe für ein shell script

HandbrakeCLI Shell Skript

Wie komme ich an den Inhalt des Inhalts einer Variable?

mysql Select Abfrageergebnis in unterschiedlichen Variablen sichern

[Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter

Zurück
Oben