linux– 在shell脚本中将脚本目录更改为用户的homedir

linux– 在shell脚本中将脚本目录更改为用户的homedir,第1张

概述在我的bash脚本中,我需要将当前目录更改为用户的主目录.如果我想更改为用户的foo home目录,我可以从命令行执行:cd ~foo 哪个工作正常,但是当我从脚本中做同样的事情时它会告诉我:./bar.sh: line 4: cd: ~foo: No such file or directory 像这样的接缝会是如此微不足道的事情,但它不起作用.这有什么问

在我的bash脚本中,我需要将当前目录更改为用户的主目录.

如果我想更改为用户的foo home目录,我可以从命令行执行:

cd ~foo

哪个工作正常,但是当我从脚本中做同样的事情时它会告诉我:

./bar.sh: line 4: cd: ~foo: No such file or directory

像这样的接缝会是如此微不足道的事情,但它不起作用.这有什么问题?我是否需要逃避“〜”或可能缺少引号或其他内容?

编辑

当我说用户时,我不是指当前运行脚本的用户,而是通常系统上的任何其他用户

编辑

这是脚本:

#!/bin/bashuser="foo"cd ~$user

如果用户名是硬编码的

cd ~foo

它可以工作,但如果它在用户变量中,那么它不会.我在这里错过了什么?最佳答案关于什么

cd $(getent passwd foo | cut -d: -f6)

USER=fooeval cd ~$USER

也工作(foo是用户名) 总结

以上是内存溢出为你收集整理的linux – 在shell脚本中将脚本目录更改为用户的homedir全部内容,希望文章能够帮你解决linux – 在shell脚本中将脚本目录更改为用户的homedir所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1047930.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存