尝试解决此问题:
并且一个解决方案的一部分是使用:
a.left = null
在我的案例中输出:
$(which sshd)
我为所有bash命令保留了备忘单,并希望添加:
Could not load host key: /etc/ssh_host_rsa_key
Could not load host key: /etc/ssh_host_dsa_key
它似乎正在为sshd可执行文件做些什么。
相关
What does it mean in shell when we put a command inside dollar sign and parentheses: $(command)
答案 0 :(得分:3)
$()
是一种执行另一个进程并收集其输出的方法。有关详细信息,请参阅http://wiki.bash-hackers.org/syntax/expansion/cmdsubst。
当这样的表达式传递给bash时,其输出被执行。它有效地使用其完整路径调用命令,因为这是which
返回的内容。打印的消息来自该表达式启动的sshd进程。
请注意which
找到可执行扫描$PATH
,与执行命令时相同。换句话说,执行which
输出它不会影响运行哪个可执行文件,只会影响操作系统跟踪的可执行文件的完整路径。
答案 1 :(得分:0)
$(which sshd)
将替换为运行which sshd
的生成的标准输出。 which sshd
将返回调用sshd
时调用的可执行文件的完全限定路径:
which
返回将在当前环境中执行的文件(或链接)的路径名,其参数为 作为严格符合POSIX的shell中的命令给出。它通过在PATH
中搜索匹配的可执行文件来完成此操作 参数的名称。它不遵循符号链接。
在命令行上运行的示例,其中>
表示输入提示符:
COMMAND: which sshd
OUTPUT: /usr/sbin/sshd
COMMAND: echo "The full path of sshd is $(which sshd)"
OUTPUT: The full path of sshd is /usr/sbin/sshd
COMMAND: $(which sshd)
OUTPUT: [[whatever output you get from running /usr/sbin/sshd]]