Oli*_*ryn 1 unix bash shell ubuntu command-line
我正在创建一个 Unix .bash_profile 脚本,但遇到了一个小问题。这是我的代码片段:
echo -n "Welcome "
whoami
echo -n "!"
Run Code Online (Sandbox Code Playgroud)
我希望输出给出如下内容:
Welcome jsmith!
Run Code Online (Sandbox Code Playgroud)
......相反,我得到了这样的东西:
Welcome jsmith
!
Run Code Online (Sandbox Code Playgroud)
我怎样才能把所有这些都放在一条线上?任何帮助是极大的赞赏。如果这有帮助,我将在 Ubuntu Server 10.04 LTS 上使用 Bash Shell。
您可以插入$(command)
(新样式)或`command`
(旧样式)以将命令的输出插入双引号字符串中。
echo "Welcome $(whoami)!"
Run Code Online (Sandbox Code Playgroud)
注意:在脚本中,这将正常工作。如果您在交互式命令行中尝试它,final!
可能会给您带来麻烦,因为它!
会触发历史扩展。
命令替换
命令替换允许命令的输出替换命令名称。有两种形式:
Run Code Online (Sandbox Code Playgroud)$(command)
或者
Run Code Online (Sandbox Code Playgroud)`command`
Bash 通过执行命令并用命令的标准输出替换命令替换来执行扩展,并删除任何尾随的换行符 [强调添加]。
归档时间: |
|
查看次数: |
16242 次 |
最近记录: |