🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: ch.comp.os.linux
9 messages
9 total messages Started by Daniel Lutz Fri, 28 May 1999 00:00
Dateinamen aufteilen
#22205
Author: Daniel Lutz
Date: Fri, 28 May 1999 00:00
6 lines
680 bytes
Hallo

Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
dem letzten Punkt und den Teil davor?

Dani
Re: Dateinamen aufteilen
#22209
Author: Tobias Goeller
Date: Fri, 28 May 1999 00:00
22 lines
1068 bytes
Daniel Lutz wrote:
> 
> Hallo
> 
> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
> dem letzten Punkt und den Teil davor?
> 
> Dani

Wie meinst Du das???

Aus LONG-Filename einen 8.3er machen????

Gruss
Tobias

-- 

COM.BOX WINET	         			\|/
Tobias Goeller		         	      ({o.o})
				                \./
t.goeller@combox.de			         U
Re: Dateinamen aufteilen
#22212
Author: Daniel Lutz
Date: Fri, 28 May 1999 00:00
25 lines
1079 bytes
Tobias Goeller wrote in message <374E5396.BC8F8DEB@combox.de>...
>Daniel Lutz wrote:
>>
>> Hallo
>>
>> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
>> dem letzten Punkt und den Teil davor?
>
>Wie meinst Du das???


So:

alles = "aaaa.bbb.cc"

... gesuchte Sequenz ...

vor = "aaaa.bbb"
nach = "cc"

("alles", "vor", "nach": Shellvariable)

Ich muss vielleich noch anf�gen, dass ich Anf�nger bin.

Dani
Re: Dateinamen aufteilen
#22216
Author: Daniel Werner
Date: Fri, 28 May 1999 00:00
15 lines
1210 bytes
"Daniel Lutz" <dlutz@ntb.ch> meinte zum Thema
 	Dateinamen aufteilen:
> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
> dem letzten Punkt und den Teil davor?

info basename
man basename

HTH
Daniel

-- 
Unterschriftenb�gen zu den Initiativen "F�r einen freiwilligen zivilen 
Friedensdienst" und "F�r eine Schweiz ohne Armee" gibt's bei der GSoA:
http://www.gsoa.ch/; Tel: 01 / 273 01 00; GSoA, Postfach, 8031 Z�rich.
Re: Dateinamen aufteilen
#22098
Author: Daniel Lutz
Date: Mon, 31 May 1999 00:00
18 lines
1201 bytes
Daniel Werner wrote in message ...
>> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
>> dem letzten Punkt und den Teil davor?
>
>info basename
>man basename


"basename" ist ok, wenn die Datei eine zum vorneherein bekannte Endung hat.
Aber was macht man, wenn man das Verhalten eines Programs wie "TeX"
nachbilden m�chte, das ALLE Endungen akzeptiert?

Ich sch�tze, dass es in RIchtung "sed" geht; ich habe aber keine Ahnung, wie
man mit regul�ren Ausdr�cken umgeht.

Vielleicht kann mir jemand weiterhelfen?

Dani
Re: Dateinamen aufteilen
#22110
Author: Andreas Eggenschwiler
Date: Mon, 31 May 1999 00:00
19 lines
1092 bytes
"Daniel Lutz" <dlutz@ntb.ch> writes:

> Ich sch�tze, dass es in RIchtung "sed" geht; ich habe aber keine Ahnung, 
> wie man mit regul�ren Ausdr�cken umgeht.

$ touch a.dat b.fab
$ ls 
a.dat  b.fab
$ for file in *.?a?; do mv $file `echo $file |sed 's/\..*/.aaa/g' `; done
$ ls
a.aaa  b.aaa

Fuer solche Dinge ist 'Unix power tools' (das Bohrmaschienen-Buch) gut.
Dennoch solltest du vielleicht gleich perl lernen, solche Dinge mit
sh/sed/awk werden schnell sehr uebel.

-- 
Ciao
	Res
Re: Dateinamen aufteilen
#22112
Author: skilchen
Date: Mon, 31 May 1999 00:00
38 lines
1641 bytes
In article <7itpa3$fg9$1@pollux.ip-plus.net>,
  "Daniel Lutz" <dlutz@ntb.ch> wrote:
> Daniel Werner wrote in message ...
> >> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den
Teil nach
> >> dem letzten Punkt und den Teil davor?
> >
> >man basename

???

Mit reinen Shell-Mitteln kann ich sowas nicht loesen, aber es gibt den
Befehl expr der solche Dinge kann:
file="hihi.haha.hoho"
f=`expr $file : '\(.*\)\..*' \| $file`
s=`expr $file : '.*\.\(.*\)' \| $file`

echo "1. Teil: $f"
echo "2. Teil: $s"

>
> Ich sch�tze, dass es in RIchtung "sed" geht; ich habe aber keine
Ahnung, wie
> man mit regul�ren Ausdr�cken umgeht.
>
Mit sed und sh zusammen z.B. so:
file="hihi.haha.hoho"
set `echo $file | sed -e 's/\(.*\)\.\(.*\)$/\\1 \\2/'`
echo "1. Teil: $1"
echo "2. Teil: $2"

--
Samuel Kilchenmann
skilchen@swissonline.ch


Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
Re: Dateinamen aufteilen
#22036
Author: Maechler Albin
Date: Tue, 01 Jun 1999 00:00
26 lines
1352 bytes
Hoi Daniel,

> Wie kann man mit sh oder bash einen Dateinamen aufteilen in den Teil nach
> dem letzten Punkt und den Teil davor?

# alles="aaaa.bbb.cc"
# vor=${alles%.*}
# nach=${alles##*.}
# set
alles=aaaa.bbb.cc
nach=cc
vor=aaaa.bbb


PS: Den Prompt '#' verwende ich anstelle von '>', um Verwirrungen mit dem
Zitatzeichen zu vermeiden. Ich will damit nicht andeuten, dass die Befehle nur
unter root laufen!

Gruss

Albin

---------------------------------------------------------
Albin Maechler           |  phone: +41 79 430 23 40
Jonas-Furrer-Strasse 97  |
CH-8400 Winterthur       |  mailto:Albin.Maechler@nice.ch
Re: Dateinamen aufteilen
#22070
Author: Daniel Lutz
Date: Thu, 03 Jun 1999 00:00
10 lines
991 bytes
Andreas Eggenschwiler wrote in message ...
>$ for file in *.?a?; do mv $file `echo $file |sed 's/\..*/.aaa/g'

Danke, so etwas habe ich gesucht!
Allerdings ist diese Methode nicht ganz perfekt, weil sie den Dateinamen
beim ersten statt beim letzten Punkt aufteilt.

Gruss
Dani
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads