发布网友 发布时间:2022-04-25 21:13
共5个回答
热心网友 时间:2023-10-15 06:54
你应该是空格的问题吧,比如alias ls="ls -l"这就必须得加引号,比如alias vi=vim就不需要引号热心网友 时间:2023-10-15 06:55
看看你命令打对没有,注意空格热心网友 时间:2023-10-15 06:55
如果你非要这样 建议你直接在脚本中定义别名 因为环境变量不同,外部定义的别名估计在脚本里是用不了的。热心网友 时间:2023-10-15 06:56
这个问题有三个可能原因导致。
忘记source。
如果写了后,这段脚本没有在.bashrc里或者.cshrc里面,是不会跟着新开的terminal自动加载的。所以这时候需要手动source一下。
即便写在了.bashrc或者.cshrc里面,当前terminal终端程序也不会立即生效,需要新开一个terminal终端,才会重新加载source文件,或者你手动在当前终端里source一次。
alias命令里忘记带空格了。
比如写个alias
alias cadhome 'cd/home/PC/cad/'
忘了带空格,就把cd后面的路径识别为整体命令的部分了,某个粗心的低级错误。所以才提示没有找到命令。windows下写的脚本,在linux下无法正常运行。
因为windows下换行是\r\n,而这个\r是*的字符。所以你查看alias也看不到,但是实际上执行的命令是原有的命令后面莫名其妙加了一个\r,所以提示找不到命令,这样写cd命令也会提示找不到目录,因为莫名其妙有个\r在后面。。。
这个比较好检查,vim下面输入:set ff
返回的是dos,就代表换行是用\r\n的方式,再手动敲一次 :set ff=unix ,强制转换成unix格式,再保存即可!
热心网友 时间:2023-10-15 06:57
还需要重载一下哦,不知道你忘记没。