Forum: PC-Programmierung Sheel Skript Frage


von A. B. (funky)


Lesenswert?

Hallo,

habe ein kleines Bash-Shellskriptproblem und vielleicht hat ja jemand 
eine Lösung parat:

Hier das Problem an einem kleinen Beispiel:
1
#!/bin/bash
2
for z in $(cat remote.txt)
3
   do
4
  CLIENTIP=$(echo $z | cut -d"," -f1)
5
  CLIENTUSER=$(echo $z | cut -d"," -f2)
6
  CLIENTPASS=$(echo $z | cut -d"," -f3)
7
  
8
   ./netcat -i 1 -t $CLIENTIP $UPDTELNET >log.dat <<END
9
   $CLIENTUSER
10
   $CLIENTPASS
11
  END
12
   done

funktioniert nicht, da dann ein "unexpected end of file" error kommt.
Ursache ist das <<END  END Konstrukt.

packe ich den Kram zwischen den ENDs in eine extra Datei "comand.txt" 
und rufe mein netcat so aus:
1
#!/bin/bash
2
for z in $(cat remote.txt)
3
   do
4
  CLIENTIP=$(echo $z | cut -d"," -f1)
5
  CLIENTUSER=$(echo $z | cut -d"," -f2)
6
  CLIENTPASS=$(echo $z | cut -d"," -f3)
7
  
8
   ./netcat -i 1 -t $CLIENTIP $UPDTELNET >log.dat < comand.txt
9
   done

dann ahbe ich keinen end of File error mehr, aber die Variablen in der 
Textdatei werden nicht verarbeitet und es wird dann nur $CLIENTPASS als 
Text übertragen. Ich möchte ja aber den Inhalt erhalten.

Hat jemand eine Idee wie man das Problem lösen kann?

Vielen Dank

von A. B. (funky)


Lesenswert?

ja, es sollte shell skript heißen :P

von A. B. (funky)


Lesenswert?

arg...Scheißendrecksfehler

das END MUSSS!!! am zeilenanfang stehen! dann klappts auch mit dem 
Shellskript. Geil. kein plan wie lange ich genau nach dem fehler gesucht 
habe, aber es war sehr lange batsch

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.