[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Shell Skript Problem beim Kommandoaufruf inkl. "("



On 04.Jun 2005 - 18:01:25, Jean Fiedler wrote:
> > > if [ `(diff <(gzip -dc $LASTBACKUP | tar tvf -) <(gzip -dc
> > > $BDIR/CVS_Backup_$DATE.tar.gz | tar tvf -)) | wc -l` != 0 ] ; then
> > 
> > 2. Wieso benutzt du nicht tar's eingebautes gzip.
> 
> Weil ich zugeben muß, das ich das Skript auf Solaris laufen lassen, da aber
> bei euch die Mailingliste so gut ist schreib ich hier! :-) Die tar Version
> von Solaris unterstützt leider nicht nativ gzip.

Die Info ist nicht ganz unwichtig, denn evtl. unterscheidet sich die
Bash auf Solaris von der in Debian... Du nutzt doch ne Bash auf Solaris
oder?

> > 3. Ich bin ja kein shell-Freak, aber ich glaube nicht das 
> > kommando <... <...
> > funktioniert. Auch bei diff nicht. Weiterhin funktioniert auch
> > kommando <(kommando2) 
> > nicht so wie du das willst.
> 
> Doch es funktioniert hervorragen. und zwar wenn ich es direkt in der
> Kommandozeile aufrufe.

Stimmt, geht hier auch, mein Versuch beim ersten Antworten scheint etwas
daneben gewesen zu sein... 

> Leider funktionierts aber nicht mehr aus dem Skript
> heraus warum?

Also wenn du das diff <(..) <(..) aus dem if rausnimmst und vorher
einmal ausfuehrst sollte es gehen. Wenn nicht: Setzt du das Shebang auch
auf die bash und nicht auf sh? (Um sicher zu gehen dass du auch wirklich
ne bash kriegst und nicht vllt. ne tcsh oder so...)

> Das Skript soll folgendes machen. Es erstellt ein Vollbackup eines CVS
> Verzeichnisses. Dann überprüft es, ob es veränderungen zum alten Backup
> gibt. Ist dem der Fall wird das Backup noch woanders hin geschoben. Ohne die
> Klammern gehts aber nicht, weil er dann die falsche Reihenfolge hat.

Was es macht ist mir schon klar ;-)

> Wie quotiert man Klammern in dem Shellskript?

Also ein analoges Testskript funktioniert hier wunderbar... Sprich
solange keine Klammern in deinen Variablen sind und die Solaris-Bash das
wirklich unterstuetzt, sollte es gehen. Hast du schon entsprechend der
anderen Antwort set -x ausprobiert?

> Bitte um Hilfe ist wirklich wichtig!

man bash ;-)

Ich packe meine Antwort mal wieder auf die ML, denn sooo ein
Shell-Hacker bin ich nun auch nicht...

Andreas

-- 
Don't get stuck in a closet -- wear yourself out.



Reply to: