Chinaunix

标题: alias sudo='sudo ' [打印本页]

作者: ttt3278    时间: 2016-05-07 23:05
标题: alias sudo='sudo '
本帖最后由 ttt3278 于 2016-05-07 23:34 编辑

sudo ll 会产生错误,如果加上 alias sudo='sudo ' 就不会出现问题了。请问这个是什么原理?

http://bbs.chinaunix.net/thread-4057521-1-1.html 在这个问题中7楼给出了答案,但是我没想明白原因。

shell对alias应该只扩展第一个word啊,为什么这样设置一下后,会把后面的 ll 一起扩展掉?

再补充一个问题,如果系统中的 ll 不是一个alias,而是一个function,那这个方法就无效了,这个又是什么道理?有什么办法能让sudo后面的 function 一起生效?
作者: ttt3278    时间: 2016-05-08 09:42
不好意思,今天又翻了一遍bash的man手册,关于alias有这一句话:
If the last character of the alias value is a blank, then the next command word following the alias is also checked for alias expansion.




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2