别名仅在当前shell进程有效,永久生效需写入~/.bashrc并source;带管道或变量时须用单引号;支持参数需改用函数;绕过别名可用命令或绝对路径。

Linux怎么设置命令别名alias

别名只在当前终端生效,永久使用必须写进 ~/.bashrc 并执行 source ~/.bashrc;漏掉任一环节, alias 就等于没设。

alias 命令只在当前 shell 进程里有效

直接运行 alias ll='ls -la' 命令,ll 命令立刻就能使用。不过,一旦你新开终端或者通过SSH重连,这个命令就失效了。这可不是配置错误,而是Bash的设计如此:别名会绑定到当前的shell进程,一旦进程结束,别名也就被销毁了。

永久生效必须写对文件 + source

绝大多数桌面环境(如Ubuntu、Debian、CentOS默认终端)启动的是那种非登录shell,它只会读取~/.bashrc;而~/.bash_profile呢,只有在登录shell(像首次SSH连接时)才会被读取一次,平时日常打开终端基本不会触发它的读取。

带管道、变量、空格的别名容易崩

别名本质是字符串替换,定义时不重新解析命令结构。单引号是保命符,双引号反而危险;变量在定义时就被展开,之后改环境变量也无效。

绕过别名和末尾空格的特殊用途

设了 alias rm='rm -i' 后,某次想跳过确认,不能硬加 -frm -f file 会被展开成 rm -i -f file-i-f 冲突)。

生命周期、引号规则、参数传递这三块最容易卡住人——尤其是把函数当别名用,或者以为写进 .bash_profile 就能覆盖所有终端场景。

本文转载于:https://www.php.cn/faq/3025445.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。