[英]Echo a grep result
我有一個文件
dogs:${breed}
我想 grep 並獲取 ${dog} 並獲取值,我已將值導出為
export breed='german'
我所做的是
eval "$(grep -iw dogs file_name | awk 'BEGIN {FS=":"} {print $2}')"
這實際上會導致錯誤,因為它以德語為命令。 我想要的輸出如下。
german
您可以使用envsubst
替換文字文本中的 shell 樣式變量:
echo 'dogs:${breed}' > file_name
export breed=german
grep -iw dogs file_name | awk 'BEGIN {FS=":"} {print $2}' | envsubst
這輸出german
嘗試改變
eval "$(grep -iw dogs file_name | awk 'BEGIN {FS=":"} {print $2}')"
到
eval "echo $(grep -iw dogs file_name | awk 'BEGIN {FS=":"} {print $2}')"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.