bash - 无法将 while 循环中的修改行设置为变量
问题描述
我有这个简单的 bash 命令,其目的是存储由 sed 修改为变量的行
unset x
while read line; do
echo $line'_db'|sed 's/- //g' | read x
echo $x
done < <(yq eval '.databases' ${databasesPath});
到目前为止,我有这个,文本文件包含“-name”行
出于某种原因,当我执行上述操作时,我得到一个空行,好像没有任何东西存储到变量中?我做错了什么。
除了变量只需要存在于while循环的范围内,不在外面,是否需要在外面声明?
为什么?修改后的必须在同一个 while 循环中解析为命令,但不能在读取时解析。
解决方案
推荐阅读
- mysql - Wordpress ACF 中继器获取信息 SQL 查询
- azure - 在 VSTS 中使用 arm 模板将 azure 函数应用程序部署到 Azure 时出错
- jdbc - 如何从 jdbc 驱动程序访问 gemfire 缓存
- regex - logstash - 正则表达式匹配用户名扩展
- loops - 如何使用 SAS 中数据文件名中的日期创建日期字段?
- jquery - 某些 HTML 中的 CSS 通知设计问题
- android - 无法停止其他活动的响铃警报
- c# - RDLC 渲染到 Excel 在下载之前从代码更改文件默认设置
- c - 与 i++ 和 i=i+1 混淆
- lodash - Error: Cannot read property 'cloneDeep' of undefined Angular 5