我想设置一个别名来alias open=xdg-open
替换普通的 linuxopen
命令,该命令本身就是openvt
.
我使用 bash shell 运行 debian wheezy 安装。如果我这样做,有人会看到可能出现的问题吗?
我想设置一个别名来alias open=xdg-open
替换普通的 linuxopen
命令,该命令本身就是openvt
.
我使用 bash shell 运行 debian wheezy 安装。如果我这样做,有人会看到可能出现的问题吗?
是的。一旦你给它起别名,它只对你的用户有效。
您还可以在其中添加它~/.bashrc
,因此它仅适用于您的用户并且仅适用于当前的 shell 会话(每次启动新会话时都会再次为自己设置别名)。
在某些发行版中,.bashrc
加载.bash_aliases
为每个会话调用的文件。你也可以在那里添加你的别名。
alias
只是原始文本的文本替换(如 C 中的预处理器)。
它仅在创建它的当前 shell 中有效,除非您将其添加到.rc
file 或.profile
. 退出后,别名不再存在,因此我不明白为什么它会导致任何问题。
在某些系统上,open
命令实际上是指run-mailcap
命令。默认情况下, runningopen
与 running 相同run-mailcap
。通常,open
使用 Bash 别名覆盖是安全的,因为这只会影响当前的 shell 会话,而不影响该会话中的 Bash 脚本。把它放在你的.bashrc
:
alias open='xdg-open'
Debian 11 和相关发行版(例如 Ubuntu 21.10 或更高版本)使用update-alternatives
系统来管理open
命令。因此,如果您愿意,可以在open
系统范围内配置命令以引用xdg-open
,如下所示:
sudo update-alternatives --install /usr/bin/open open /usr/bin/xdg-open 50
sudo update-alternatives --config open