Bash:在斜杠后回显参数将插入一个空白字符
我试图在bash中使用命令行参数构造一条路径。我在.bashrc中添加了以下行:Bash:在斜杠后回显参数将插入一个空白字符,bash,Bash,我试图在bash中使用命令行参数构造一条路径。我在.bashrc中添加了以下行: alias hi="echo '/path/to/$1'" 然而,这会产生: ~$ hi foo /path/to/ foo 你知道斜杠后面的空白是从哪里来的吗?< /P> 谢谢 简而言之,别名不能接受参数。您可以改为创建函数: $ function hi() { echo "/path/to/$1"; } $ hi foo /path/to/foo 阅读其他选项。简而言之,别名不能接受参数。您可以改为
alias hi="echo '/path/to/$1'"
然而,这会产生:
~$ hi foo
/path/to/ foo
你知道斜杠后面的空白是从哪里来的吗?< /P>
谢谢
简而言之,别名不能接受参数。您可以改为创建函数:
$ function hi() { echo "/path/to/$1"; }
$ hi foo
/path/to/foo
阅读其他选项。简而言之,别名不能接受参数。您可以改为创建函数:
$ function hi() { echo "/path/to/$1"; }
$ hi foo
/path/to/foo
阅读其他选项。正如卢卡申斯克所述,别名不带参数,因此
$1
为空。但是,即使您要这样做:
alias hi="echo '/path/to/'"
你会得到一个空间。原因是,如果您有这样的别名:
alias myls=ls
而且:
myls filename
它不会尝试运行:
lsfilename
正如LukášLalinský所述,别名不带参数,因此
$1
为空。但是,即使您要这样做:
alias hi="echo '/path/to/'"
你会得到一个空间。原因是,如果您有这样的别名:
alias myls=ls
而且:
myls filename
它不会尝试运行:
lsfilename
谢谢我想这就是我要找的。谢谢!我想这就是我要找的。