linux下命令行tab的时候,变量前自动多了个反斜杠 20
在ubuntu的命令行下输入一个命令,命令里有个变量,像ls$HOME/,这时一按tab来提示的时候,我的命令就自动变成了ls\$HOME/。有没有人遇到过啊?我在其他一...
在ubuntu的命令行下输入一个命令,命令里有个变量,像 ls $HOME/,这时一按tab来提示的时候,我的命令就自动变成了ls \$HOME/。有没有人遇到过啊?我在其他一些linux系统也遇到过,不止时ubuntu,不知到怎么回事。用的时bash。
bash --version
GNU bash, 版本 4.2.25(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
许可证 GPLv3+: GNU GPL 许可证版本3或者更高 <http://gnu.org/licenses/gpl.html>
求高人指点。谢谢!! 展开
bash --version
GNU bash, 版本 4.2.25(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
许可证 GPLv3+: GNU GPL 许可证版本3或者更高 <http://gnu.org/licenses/gpl.html>
求高人指点。谢谢!! 展开
展开全部
不是所有linux版本都这样。RHEL5,6没这个问题。
你的意思是多了一个"\"吗? 你是在输完ls $HOME再按tab键?
你的意思是多了一个"\"吗? 你是在输完ls $HOME再按tab键?
追问
是输玩ls $HOME/再tab。
输入ls $HOME时tab,它还没有多那个反斜杠。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先把下面这条命令的执行结果给我看看:
env | grep HOME
我这里是会展开为环境变量 HOME 对应的值。
更多追问追答
追问
命令的结果就是我的家目录啊,这个不用自己设也会有的啊
HOME=/home/xqw
我就是希望他能自动展开,可是它给我在$前加了个反斜杠。
追答
我这里是会自动展开为环境变量所指示的家目录。
Ubuntu默认是dash,你改为bash啦?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
shopt -s direxpand
或者
shopt -s cdable_vars
祝好运
或者
shopt -s cdable_vars
祝好运
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主解决了么?我也遇到了同样的问题,会自动加一个反斜杠到后面。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是因为bash以为你要输入$符号(即以为你真的要输入一个名字中包含$字符的名字),需要转义导致的。
追问
我的问题是怎么解决这个问题呢,某些其它linux系统的bash是不会这样子的,这问题真的跟bash有关吗?还是跟环境变量有关?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询