私は現在AWKを扱っており、私が扱っている3つの変数があります。
- $0 変数 - この例では、次と同等です。
path/filename.cpp LOG_ERR << "error in this log" << e.what();
- $logName 変数 - cpp ファイルの名前を解析しました。
filename
- $2 変数 - デフォルトの 2 番目の値が含まれます。
LOG_ERR
質問:
私がやろうとしているのは、次のように値を連結することです:
logName=$logName $2;
しかし、期待値の代わりに、次のfilenameLOG_ERR
ようになります。
filename LOG_ERR << "error in this log" << e.what();
私は何を間違っていますか?
編集: 要求された AWK コード:
awk '{
logName=sub(/^.*\//,"",$1);
logName=sub(/\..*:/,"",$logName);
print $logName;
print $2;
logName=$logName $2;
print $logName;
}' $file
EDIT2:修正。フィールド番号でない限り、awk で $ 変数を呼び出さないでください。:)
awk '{
logName=$1;
sub(/^.*\//,"",logName);
sub(/\..*:/,"",logName);
print logName;
logName=logName $2;
print logName;
}' $file