string - 切入终端后执行字符串
问题描述
我有一个文件说 test.txt ,其内容是:
ID="1002"Name="gltestDmesg":Command="dmesg":
我想运行这样的命令:
cat test.txt | rev | cut -d'"' -f2 | rev | execute
代替execute
,它应该是一个使dmesg在终端中运行的命令。代替dmesg
,它可以是可以在终端上运行的任何命令。我试过xargs为:
cat test.txt | rev | cut -d'"' -f2 | rev | xargs
但它dmesg
作为输出给出,因为xargs中的默认程序是echo。
我尝试在几个链接中搜索,但都说字符串操作使用cut
或sed
之后没有执行。但是我知道了,xargs
但这也行不通。
如果我错过了什么,也请发表评论。
谢谢!
Edit1:在 test.txt 中,可以有多行类似的语法,所以我也可以用cat代替 grep。
解决方案
您可以将输出用作命令:
$(rev test.txt | cut -d'"' -f2 | rev)
旧的形式(仍在工作,但你不能嵌套它):
`rev test.txt | cut -d'"' -f2 | rev`
或者,如果您必须对其进行管道传输,则以下内容应该有效:
rev test.txt | cut -d'"' -f2 | rev | sh
推荐阅读
- django - Django 插入数据(获取正确数据)
- sqlite - “,”附近:使用外键的语法错误
- algorithm - f(n) 可以在 g(n) 的大 O 和大 Omega 中吗?
- image-processing - Frame is not responding while imageAi detection
- inheritance - odoo使用委托继承产品模板,需要更改表单上categ_id的默认值
- r - Check for all package dependencies given a package's source code in R
- javascript - Javascript - 从 window.location.href 查询参数
- java - Compare instanceof with a generic class, for Fragments
- amazon-dynamodb - Updating item in DynamoDB fails for the UpdateExpression syntax
- tsql - How do I select rows from one table that do not exist in another table with a specific value