Есть куча файлов с содержимым (строк много):val1=3
val2=1
val3=15
val4=12
val5=24
val6=32
val7=test2
val8=test4
...Нужно сделать кучу сравнений с переменными.
Непонятно как сделать, чтоб в awk переменные были $1=3, $2=1 ...приходится делать:
val1=`grep val1 file | awk -F= '{ print $2;}'
val2=`grep val2 file | awk -F= '{ print $2;}'
...или
val=`cat file`
val1=`echo $val | awk '{ print $1;}' | awk -F= '{ print $2;}'
val2=`echo $val | awk '{ print $2;}' | awk -F= '{ print $2;}'
...Подскажите направление для ускорения парсинга...
$ awk 'BEGIN {FS="=";} NR==1 {print $2};' test;
> $ awk 'BEGIN {FS="=";} NR==1 {print $2};' test;Не работает.
awk -F= '{ print $2;}' file
Выдает вторую колонку при разделителе =
> Подскажите направление для ускорения парсинга...Ускорение "парсинга" - один проход awk-ом и логика в нём.
<file.txt awk -F= '{ar[$1]=$2}END{if(ar["var1"]==ar["var2"])print"Да!"}'
>> Подскажите направление для ускорения парсинга...
> Ускорение "парсинга" - один проход awk-ом и логика в нём.
> <file.txt awk -F= '{ar[$1]=$2}END{if(ar["var1"]==ar["var2"])print"Да!"}'Благодарю.
>> <file.txt awk -F= '{ar[$1]=$2}END{if(ar["var1"]==ar["var2"])print"Да!"}'
> Благодарю.Смотри не насупи на спец эффект при:
var1=TRUE
var2=TRUE
...
var1=FALSEВ остальном - Андрейка очень дал хороший совет. Молодец :)