linux - 回显 grep 结果
问题描述
我有一个文件
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
推荐阅读
- timestamp - 四舍五入到最接近的十分钟 - Snowflake/SQL
- ios - Apple Developer Enterprise Program 应用程序没有图标
- python - 如何将一长串图像保存到特定目录?
- odoo - 在odoo中获取带有html格式的电子邮件正文
- java - 在 Sub-Fragment 中,当 webview 无法返回时,如何重定向到 Main-Fragment 或 Home-Fragment
- php - 如何在php中从python获取返回值?它不起作用
- javascript - 多个带有数字的变量并将结果再次添加到变量中返回错误的结果
- sql - 在查询的其他地方使用子查询的结果
- c++ - 为什么我们需要 const 方法?
- python - 如何使用 Python 在 Excel 文件名中包含单元格的值?