问题标签 [command-substitution]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - 为什么在命令替换中输入重定向的工作方式不同?
考虑以下情况:
在命令替换中,我们使用了重定向和文件,并且文件的内容被变量正确捕获。
但是,以下所有示例均不产生输出:
在所有这些情况下,命令的内容都不会重定向到输出。
那么,为什么将重定向放在命令替换中时会有所不同呢?在命令替换块内部和外部时,重定向是否具有不同的功能?
bash - 如何在bash(xargs?)中的文件列表上执行多个命令
我有一个包含文件列表的文件,我想对每个文件执行两个命令。
files.txt 的内容:
我想对每个文件执行的命令是(例如)ls -s
和du
.
我希望输出最终是这样的:
我知道如何使用 bash 脚本来做到这一点,但是有没有办法在一行上轻松地做到这一点,使用进程替换之类的?
我以为我可以做这样的事情,但它没有用:
出现了这些错误:
有没有办法做到这一点?
bash - 有没有一种“更干净”的方法可以将标准输入替换为 Bash 中的字符串?
在编写 bash 脚本时,我经常发现自己在做这样的事情:
或者
如果我想将 stdin 乘以 64。有没有更好的方法将 stdin 替换为字符串(或命令行,例如 in seq 1 2 $(cat)
)?
bash - bash命令替换期间的空白变量
我正在执行命令替换并将结果保存到变量中。但是,命令的结果包含双引号,这导致变量为空。
运行时test="$(java -version)"
我得到以下结果:
但是运行echo $test
会产生一个空行。
bash - Bash:将变量内容作为参数插入命令替换 - 如何正确引用?
我真的没有找到解决这个问题的方法:假设我有一个多行的变量,每一行最后应该是一个参数。
我只在运行时获取这些数据,但它应该像这样构建到命令中:
(数据必须用 - 分隔,但这不是问题。)
我想我真的尝试了所有可能的组合,但它不会成功。我已经检查了这个网站,但我>认为<它没有为我的问题提供解决方案:http: //mywiki.wooledge.org/BashFAQ/050
我应该尝试切换分词吗?
这是我现在的代码:
使用数组也不起作用(如 (5) 中的建议:https ://superuser.com/a/360986 ):( 如何停止在引用的内容中进行分词,即使插入了引用的内容,因为变量替换?
编辑:谢谢大家,引用$line_separated_input
是解决方案的一部分。将它与数组列表而不是变量一起使用最终解决了我的问题。你可以自己检查一下,有一个额外的命令替换会使事情变得更难:
两者都没有预期的输出。这只有在我执行以下操作时才能实现:
多多!谢谢大家 :)
bash - 在 ${ 花括号内运行命令
我想使用别名cd
,以便将我带到我当前 git 项目的根目录,如果找不到,它会将我带到我正常的主目录。
我正在尝试设置HOME
为 git root,或者如果找不到,则设置为我的正常主变量。
但它不起作用。
bash - $(< file) 记录在哪里?
在 bash 中,可以使用表单将文件作为参数"$(< file)"
。可能是特殊外壳的文档在哪里$(<
?
bash - bash 不按顺序运行命令
我有一个包含以下内容的 bash 脚本:
当我从终端获取脚本时,出现以下错误:
这表明其中的命令MY_COMMAND
不是按顺序执行的。这里发生了什么?
bash - 命令替换用空格分隔引用的参数
如下所示,命令替换改变了引用的命令行参数的解释。引擎盖下发生了什么,是否有解决方法?
string - bash - 命令替换省略了空格
我有一个命令返回一个带有前导空格的字符串,当我使用命令替换时会被吃掉
为什么会发生这种情况,我该怎么办?