gpt4 book ai didi

shell - ubuntu 中的 "CD"不工作,即使是 root

转载 作者:行者123 更新时间:2023-12-04 18:38:09 30 4
gpt4 key购买 nike

我有一个在我的 Ubuntu 12.04 LTS 服务器上运行的 shell 脚本:

cd /var/www/srv

但是,由于某种原因,当我运行它时,它显示: ./start.sh: 1: cd: can't cd to /var/www/srv
该目录存在,并且以 root 身份运行,因此没有权限问题。为了增加特殊性,当我在终端中运行代码时,它可以工作。

先谢谢了!

最佳答案

这是一个典型的回车问题,由在 Windows/DOS 编辑器中创建 shell 脚本引起。

你的问题:

$ cat start.sh
cd /

$ ./start.sh
cd: 1: can't cd to /

您的诊断:
$ cat -v start.sh
cd /^M

$ shellcheck start.sh
In start.sh line 1:
cd /
^-- SC1017: Literal carriage return. Run script through tr -d '\r' .

你的修复:
$ tr -d '\r' < start.sh  > fixed.sh
$ chmod +x fixed.sh
$ ./fixed.sh
(no errors)

关于shell - ubuntu 中的 "CD"不工作,即使是 root,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22944945/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com