dateinamen ohne endung in variable

F

fencingline

Mitglied
Hallo zusammen,

folgende Konstellation:

VAR1=Dateiname.txt
VAR2=Dateiname
VAR3=txt

Wie kann ich VAR2 und VAR3 füllen, wenn ich nicht weiß wie die Datei heißt? Ich weiß nur, dass von rechts der erste Punkt das Trennzeichen zwischen Dateinamen und Extension ist.

Aufgerufen wird das Script mit "script dateiname.txt"

Inhalt von script:

Code:
#!/usr/bin/ksh
DATEINAMEWEXT=$1
DATEINAME=
EXT=

VG

Sascha
 
Versuch mal das
Code:
#!/usr/bin/ksh
DATEINAMEWEXT=$1
DATEINAME=${DATEINAMEWEXT#.*}
EXT=${DATEINAMEWEXT#*.}
oder das
Code:
#!/usr/bin/ksh
DATEINAMEWEXT=$1
DATEINAME=`echo "$DATEINAMEWEXT"|cut -d'.' -f1`
EXT=`echo "$DATEINAMEWEXT"|cut -d'.' -f2`

:think: bin mir nicht sicher ob das geht, aber ein Versuch ist es Wert.
 
Hallo
Variablenexpansion.
Ob das deine Shell auch kann musst du selber nachsehen.
Code:
for i in *txt; do echo  "Datei ${i%\.*} Endung ${i##*\.} ;done

Alternative mit sed überlass ich deiner eigenen creativen Phantasie.

Gruß Wolfgang
 

Ähnliche Themen

Wie komme ich an den Inhalt des Inhalts einer Variable?

export VARIABLE

CGI laesst sich nicht ausfuehren

Zurück
Oben