bash 自动完成功能似乎不适用于 11.04 中的环境变量。当前行为如下所示
export SCRIPT=/home/user/script
cd $SCRIPT/<tab>
Run Code Online (Sandbox Code Playgroud)
导致在ie 提示变为\之前添加反斜杠 ( )$SCRIPT
cd \$SCRIPT/
Run Code Online (Sandbox Code Playgroud)
如果cd替换为ls或任何其他命令,也会发生同样的事情
另外,如果 $SCRIPT 中包含的路径中有一个可执行文件并且我想运行它
$SCRIPT/<tab>
Run Code Online (Sandbox Code Playgroud)
Bash 不显示文件夹内的选项(无论环境变量中包含的路径内是单个文件还是多个文件/目录)。
换句话说,自动完成功能不适用于环境变量。
原因很简单,我很长时间没有使用Ubuntu,所以我无法测试答案。
实际上,我的问题可能与本论坛中的这个问题(以及其他地方的这个问题)相同;确实问题是一样的,但我还是问它,因为我可以提供更多信息,并且因为我尝试了一些在网上找到的解决方案(可能会使事情变得更糟)。
我曾经休眠 Ubuntu 15.10(合上盖子)。现在我已经将它更新到 16.04(我认为这是一件好事,因为这个版本是 LTS,与 15.10 不同),我不能再使用休眠(也不是暂停!):如果我尝试使用它,Ubuntu 不会t 关机,只是屏幕变黑,电源 LED 亮起,除了手动关闭(长按电源按钮)之外,我无能为力。当我再次开机时,我看到以下几行
然后 Ubuntu 启动。
从这里我试过
sudo -s
echo shutdown > /sys/power/disk
echo disk > /sys/power/state
Run Code Online (Sandbox Code Playgroud)
和
sudo -s
echo platform > /sys/power/disk
echo disk > /sys/power/state
Run Code Online (Sandbox Code Playgroud)
只有第一个部分有效并且只有一次:部分我的意思是在残酷的关闭之后会话恢复了。
然后我尝试遵循这个建议。我不明白命令后面写的注释,所以我按原样输入了命令(认为如果在命令中有一些可以替代的东西,就会发生诸如“此命令/文件夹不存在”之类的错误):
编辑
cat /proc/meminfo
sudo swapoff -a
sudo dd if=/dev/zero of=/swapfile bs=1024 count=8M
sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
sudo -b gedit …Run Code Online (Sandbox Code Playgroud)