• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

awk error

Hallo zusammen
ich erhalte syntax error beim ausführen ein perl script.
jemand eine idee?

Linux version 2.6.18-4-686 (Debian 4.1.1-21)
Code:
perl /usr/local/bin/testscript.pl $switch_community@$switch_ip --arp=$router_community@$router_ip | awk -v switch=$switch_ip -v scandate=$scandate -- {'print "insert into switchtable(date, switch, port, vlan, mac, ip, netbios) VALUES (\""scandate"\", \""switch"\", \""$1"\", \""$2"\", \""$3"\", \""$4"\", \""$5"\");"'} >> $file

awk: line 1: syntax error at or near print
 
A

Anonymous

Gast
Jetzt mal ohne das ich das im Moment wirklich testen zu können, kann setz mal die Variabelzuweisungen im awk Aufruf in Doppelte Hochkommas. Die einfachen Hochkommas würde ich aus der geschweiften Klammer rausnehmen, also
Code:
perl /usr/local/bin/testscript.pl $switch_community@$switch_ip --arp=$router_community@$router_ip | awk -v switch="$switch_ip" -v scandate="$scandate" -- '{print "insert into switchtable(date, switch, port, vlan, mac, ip, netbios) VALUES (\""scandate"\", \""switch"\", \""$1"\", \""$2"\", \""$3"\", \""$4"\", \""$5"\");"}' >> $file
sonst bringst du awk abhängig vom Inhalt der Shell-Variablen (scandate und router_ip) ins Schleudern.

robi
 
Oben