2016-12-24 4 views
-1

Ich möchte eine Variable anstelle von # 0 #i verwenden, so dass awk Befehl für verschiedene Variable ausgeführt wird, aber es funktioniert nicht in den Code unter. Kann eine Hilfe?für Schleife in Bash funktioniert nicht für mein Skript

#!/bin/bash 

for ((i=0;i<2;i++)) 
do 
    awk '/VM #0 has been allocated to the host/ {print $0}' p_iqr.txt 
done 
+0

Was funktioniert nicht? Wo benutzt du die Variable? – Barmar

+0

Wenn ich # $ i anstelle von # 0 für die Schleife nicht ausführen – amar

+0

Variablen sind nicht in einfache Anführungszeichen erweitert, also warum sollten Sie erwarten, dass das funktioniert? – Barmar

Antwort

1

Verwenden Sie die -v Option awk eine Variable zu setzen. Dann konstruiere die Regexp durch Verketten der Variablen

+0

Vielen Dank das Skript funktioniert :) – amar