Problem beim Escapen von Sonderzeichen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von trequ1, 30.01.2009.

  1. trequ1

    trequ1 Grünschnabel

    Dabei seit:
    05.01.2009
    Beiträge:
    7
    Zustimmungen:
    0
    Hallo.

    Ich möchte eine Datei über einen rsh Tunnel ändern.

    Der Tunnel funktioniert bei mir wie folgt:
    Code:
    echo '[Befehl] 2>&1; echo ==ERROR== $?' | /usr/bin/remsh [HOST] -l [USER] /bin/sh -
    Der Befehl "hostname" gibt z.B.
    rechnername.domain ==ERROR== 0
    zurück.
    Damit kann ich dann auch den Remote-Exit Code ermitteln und mit $? den lokalen rsh exit-code ermitteln

    Ich müsste jetzt den folgenden Befehl ausführen:
    Code:
    awk '{print $0} /^Line 2/ {print "Test"}' < /etc/passwd > /etc/passwd_new
    Mein Problem ist jetzt, dass ich das ganze nicht auskommentiert bekomme.

    Beispiel:
    Code:
    echo "awk {print \$0} /^Line 2/ {print 'Test'} < testfile"
    awk {print \-tcsh} /^Line 2/ {print 'Test'} < testfile
    
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Gott_in_schwarz, 01.02.2009
    Gott_in_schwarz

    Gott_in_schwarz ar0

    Dabei seit:
    22.04.2007
    Beiträge:
    546
    Zustimmungen:
    0
    Ort:
    Niedersachsen
    Bei deinem Beispiel fehlen die Quotes um das awk Script (außerdem wird $0 expandiert trotz escape, in (ba)sh wäre das einfacher..)

    Hier mal 2 Varianten, die in (ba|k)?sh funktionieren:
    Code:
    echo 'awk '\''{print $0} /^Line 2/ {print "Test"}'\'' < testfile'
    echo 'awk '"'"'{print $0} /^Line 2/ {print "Test"}'"'"' < testfile'
    Varianten mit double quotes um den awk Befehl hab ich mal bewusst weggelassen, da die tcsh ja scheinbar sonst $0 expandiert (trotz backslash)..

    Wenn die tcsh das anbietet, möchtest du vielleicht lieber auf ein here doc zurückgreifen:
    Code:
    cat << 'EOF' > command.file
    echo this is 'a "sample" command' "with lot's of quotes" and unexpanded variabbles, like '$foo' '$bar' '$0'
    EOF
    
    bash < command.file
    Output:
    Code:
    this is a "sample" command with lot's of quotes and unexpanded variabbles, like $foo $bar $0
    Das ist imho die "sauberste" Methode. Denn hier ist jedwede shell Interaktion mit deinem code unterdrückt. (Man beachte die single-quotes um 'EOF')
    Code:
           The format of here-documents is:
    
                  <<[-]word
                          here-document
                  delimiter
    
           No  parameter expansion, command substitution, arithmetic expansion, or pathname expansion is performed
           on word.  If any characters in word are quoted, the delimiter is the result of quote removal  on  word,
           and  the lines in the here-document are not expanded.  If word is unquoted, all lines of the here-docu‐
           ment are subjected to parameter expansion, command substitution, and arithmetic expansion.  In the lat‐
           ter  case,  the character sequence \<newline> is ignored, and \ must be used to quote the characters \,
           $, and ‘.
    (aus "man bash", musst halt schauen, ob tcsh sowas auch hat..)
     
Thema:

Problem beim Escapen von Sonderzeichen

Die Seite wird geladen...

Problem beim Escapen von Sonderzeichen - Ähnliche Themen

  1. Probleme beim installieren

    Probleme beim installieren: Moin! Ich habe mir vor ein paar Wochen einen Hyrican Intel® i5, 8192MB DDR3-RAM, 1TB Speicher + 120GB SSD,GF GTX750Ti »Military 4610 PC gekauft....
  2. Probleme beim Ubuntu-Update

    Probleme beim Ubuntu-Update: Bei der Aktualisierung von Ubuntu 13.04 auf die neueste Ubuntu-Version 13.10 kann es unter bestimmten Konstellationen zu Problemen kommen....
  3. KSH: Problem beim Umleiten des Fehlerkanals

    KSH: Problem beim Umleiten des Fehlerkanals: Hallo, in einen KSH Skript führe ich folgende Befehle aus RESULT=""; ERROR=""; idsldapsearch -h localhost -p $PORT -D $USER -w $PW -s sub -b...
  4. Probleme beim lesen einer CD

    Probleme beim lesen einer CD: Hallo zusammen, ich habe eine Daten-CD mit xfburn unter Fedora 15 erstellt. Diese muss ich bei uns in der Uni-Bibliothek abgeben. Auf der CD...
  5. Probleme beim mounten eines Serververzeichnisses auf einen Client

    Probleme beim mounten eines Serververzeichnisses auf einen Client: Hallo zusammen, ich habe folgendes Problem: Wir haben einen NIS-Server mit einem User root und PW xyz. Auf diesem wurde ein Verzeichnis...