我在我的.bashrc
alias l.='ls -d .* --color=auto'
它非常有用:) 但它不能通过以下方式工作ssh
:
$ ssh localhost l.
bash: l.: command not found
这是为什么?
我在我的.bashrc
alias l.='ls -d .* --color=auto'
它非常有用:) 但它不能通过以下方式工作ssh
:
$ ssh localhost l.
bash: l.: command not found
这是为什么?
尝试:
笔记:
别名应该在
~/.bashrc
远程服务器上,而不是在本地机器上。该
-i
选项告诉bash
运行交互式外壳。默认情况下,别名仅在交互式 shell 中启用。-t
选项告诉ssh
分配一个伪 tty 。如果没有这个,bash
在交互模式下启动时会发出警告消息。这也启用ls
了颜色。没有它,您将不得不使用--color=always
,请参阅man ls
。还有另一种启用别名的方法,无需设置交互标志,即
shopt -s expand_aliases
. 所以你可以尝试:然而:
.bashrc
如果外壳采购它是交互式的,您可能只定义别名。在这个例子中,shell 那时不会是交互式的。如果您尝试在同一行定义别名,请参阅此。