了解bash中命令替换的用法

Nocl

我想知道以下两个命令之间的区别是什么?

ubuntu:~/bin$ (ls -A1 /home/ | wc -l) 
1

ubuntu:~/bin$ $(ls -A1 /home/ | wc -l)
1: command not found

如果我dir_count=(ls -A1 /home/ | wc -l)输入脚本,则会出现以下错误。

./two_args: line 24: syntax error near unexpected token `|'
./two_args: line 24: `dir_1_count=(ls -A1 "$dir_1" | wc -l)'

其中,以下工作原理:

 dir_count=$(ls -A1 /home/ | wc -l)
卡洛莉·霍瓦斯(Karoly Horvath)

$(command),是命令替换它仅执行命令并替换命令的标准输出。

因此,如果要设置变量,只需: dir_count=$(ls -A1 /home/ | wc -l)

关于其余的代码:

(ls -A1 /home/ | wc -l)

该命令在子shell中执行命令。您可能不想要这些括号。

$(ls -A1 /home/ | wc -l)

这只是没有任何意义,您替换结果,这样就得到了1,shell将尝试执行名为的命令1

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

命令替换中的Bash引用

来自分类Dev

命令中的Bash参数替换

来自分类Dev

bash 命令中的变量替换

来自分类Dev

了解Bash中的tilda,slash命令

来自分类Dev

bash中命令替换的奇怪行为

来自分类Dev

在bash命令替换中包含多行

来自分类Dev

在Bash中的$(命令替换)中报价

来自分类Dev

bash变量评估中的命令替换

来自分类Dev

了解Python中defaultdict的用法

来自分类Dev

了解 Selenium 中 executeAsyncScript 的用法

来自分类Dev

bash中“ jobs”命令的“ x”选项的用法示例

来自分类Dev

bash中脚本命令的用法是什么?

来自分类Dev

涉及功能时了解bash中的命令顺序

来自分类Dev

bash中括号的用法

来自分类Dev

bash中括号的用法

来自分类Dev

了解给定python代码中的lambda用法

来自分类Dev

了解#define用法中的副作用

来自分类Dev

了解Rc <RefCell <SomeStruct >>在Rust中的用法

来自分类Dev

了解编程任务中“之前”的用法

来自分类Dev

Fish命令替换在bash或zsh中不起作用

来自分类Dev

如何停止在BASH脚本中串联命令替换的多行输出?

来自分类Dev

类似于变量替换,但基于bash中的命令结果

来自分类Dev

替换现有BASH脚本中的某些命令

来自分类Dev

正确允许bash中命令替换的单词分割

来自分类Dev

如何修复命令替换中损坏的bash-completion?

来自分类Dev

类似于变量替换,但基于bash中的命令结果

来自分类Dev

将命令替换为bash脚本中的变量

来自分类Dev

用bash中的命令输出替换受保护的块

来自分类Dev

sh shell 中的 Bash“源”命令的替换是什么?