在我的bash脚本中,我需要将当前目录更改为用户的主目录.@H_301_2@
如果我想更改为用户的foo home目录,我可以从命令行执行:@H_301_2@
@H_301_2@
cd ~foo
哪个工作正常,但是当我从脚本中做同样的事情时它会告诉我:@H_301_2@
@H_301_2@
./bar.sh: line 4: cd: ~foo: No such file or directory
像这样的接缝会是如此微不足道的事情,但它不起作用.这有什么问题?我是否需要逃避“〜”或可能缺少引号或其他内容?@H_301_2@
编辑@H_301_2@
当我说用户时,我不是指当前运行脚本的用户,而是通常系统上的任何其他用户@H_301_2@
编辑@H_301_2@
这是脚本:@H_301_2@
@H_301_2@
#!/bin/bash
user="foo"
cd ~$user
@H_301_2@
cd ~foo
它可以工作,但如果它在用户变量中,那么它不会.我在这里错过了什么?
最佳答案