2017-10-30 5 views
0

私はAWKから値を取得しようとしている: 私は$を(してみてください)、それが悪い置換を示しています。なぜ悪い代用ですか?

a=${awk 'BEGIN { last=substr("[Import][2017-10-30 02:30:45 UTC] End",10,23); print last}'} 
bash: ${awk 'BEGIN { last=substr("[Import][2017-10-30 02:30:45 UTC] End",10,23); print last}'}: bad substitution 

を私は、 ``使用している場合、それがうまく機能:

a=`awk 'BEGIN { last=substr("[Import][2017-10-30 02:30:45 UTC] End",10,23); print last}'` 

awkのコードはうまくいきます。 awkを使用して、ファイルの文字列のような最後の "[Import] [2017-10-30 02:30:45 UTC] End"にマッチさせようとしています。コードは試しに使用されます。

+2

にあるのに対し、myvar=$(....)を使用して変数を作成する必要があり、「私は$を試してみてください()それは不正な置換を示していますが、 '$()'は表示されません。 – usr

+0

私は参照してください。どうもありがとう。 –

答えて

0

その有効でないので、あなたはパラメータ展開の基本的な形は${parameter}

a=${awk 'BEGIN { last=substr("[Import][2017-10-30 02:30:45 UTC] End",10,23); print last}'} 

から

a=$(awk 'BEGIN { last=substr("[Import][2017-10-30 02:30:45 UTC] End",10,23); print last}') 
関連する問題