bash - 如何将不同的值一个接一个地用作同一个参数?
问题描述
我在终端中运行一个命令,输出以下内容..
abc -> 1
bcd -> g
cde -> 2
def -> 3
efg -> 4
你在左边看到的->
代表另一个函数的第一个参数,你在右边看到的->
代表同一个函数的第二个参数。
您在左侧看到的内容基本上与右侧的内容配对,我想在其他功能中利用这些信息。
我的想法是将左侧的内容输出到一个文件中,并将右侧的内容输出到另一个文件中
然后创建一个函数,读取两个文件并一个一个地提取信息并在另一个函数中使用它,直到所有信息都已
i.e. after efg -> 4
在另一个函数中使用,然后它将停止。
我的问题是:
如何将不同的值一个接一个地用作同一个参数?
如何将来自两个单独文件的两条信息配对?这样对中的第一个作为一个参数运行,而对中的第二个作为另一个参数运行。
有更好的方法吗?
解决方案
Shell 脚本非常适合处理文本和运行命令。不需要临时文件。一个简单的循环就可以做到:
some_command | while read -r param1 _ param2; do
use_values "$param1" "$param2"
done
这some_command
是打印上面输出的命令use_values
的占位符,也是使用这两个值的“其他函数”的占位符。
我用作位_
的变量名->
,它被忽略了。_
是一个常用的习惯用法,表示未使用的变量。
推荐阅读
- python-3.x - Odoo 14 API - 没有名为 xmlrpc.client 的模块
- python - 在不使用 zip 的情况下,成对获取 DataFrame 中每一行的所有列值
- vb.net - 放置变量的最佳位置(VB.NET)
- mysql - 如何使用 appscripts 连接到运行在云服务器上的 mysql 或 postgresql 数据库?
- php - SendGrid addContent php 函数
- javascript - svg 和 php/apache 请求之间的关系
- json - 未在开放天气应用程序中获取每日数据
- modelica - 模拟过程中 Dymola 结果的数据处理
- c# - 天蓝色本地存储表自定义字段为空
- flutter - 在颤振中构建函数后,如何将单个数据变量放入另一个页面?