我写了一个应该创建目录的脚本。它在没有 sudo 的情况下工作,但没有它。脚本需要用 sudo 调用
I wrote a script that's supposed to make a directory. It works without sudo, but doesn't with it. THe script is required to be called with sudo
我应该制作一个脚本,将一些文件从 /etc
备份到一个目录中
我必须创建名为 backup-confs
。问题是我必须 运行 使用 sudo 的脚本,但是当我这样做时它不会创建目录。没有它也能正常工作,但我不明白为什么它不能与 sudo 一起工作。
#!/bin/bash
mkdir /home/student/tema3-scripts-output/backup-confs 2>> err.txt
这个版本也不行
#!/bin/bash
cd 2>> err.txt..
cd tema3-scripts-output 2>> err.txt
mkdir backup-confs 2>> err.txt
cd .. 2>> err.txt
cd tema3-scripts 2>> err.txt
我看到您正在使用相对目录引用(例如 cd tema...
而不是 cd /tmp/tema...
)。当 sudo
下的 运行 时,您正在更改用户,这可能意味着您正在更改目录,因此我建议您始终使用绝对目录引用。
不要把所有的事情都做一遍,把它分开。
也许在创建目录时遇到问题,同时重定向来自“.../backup-confs”
的输出
- 尝试使用绝对引用
sudo mkdir /home/some-new-dir
- 授予文件权限
chmod 777 /home/some-new-dir
和个人喜好,使用“复制”:cp /home/student/some-config /home/some-new-dir/some-config
我应该制作一个脚本,将一些文件从 /etc
备份到一个目录中
我必须创建名为 backup-confs
。问题是我必须 运行 使用 sudo 的脚本,但是当我这样做时它不会创建目录。没有它也能正常工作,但我不明白为什么它不能与 sudo 一起工作。
#!/bin/bash
mkdir /home/student/tema3-scripts-output/backup-confs 2>> err.txt
这个版本也不行
#!/bin/bash
cd 2>> err.txt..
cd tema3-scripts-output 2>> err.txt
mkdir backup-confs 2>> err.txt
cd .. 2>> err.txt
cd tema3-scripts 2>> err.txt
我看到您正在使用相对目录引用(例如 cd tema...
而不是 cd /tmp/tema...
)。当 sudo
下的 运行 时,您正在更改用户,这可能意味着您正在更改目录,因此我建议您始终使用绝对目录引用。
不要把所有的事情都做一遍,把它分开。 也许在创建目录时遇到问题,同时重定向来自“.../backup-confs”
的输出- 尝试使用绝对引用
sudo mkdir /home/some-new-dir
- 授予文件权限
chmod 777 /home/some-new-dir
和个人喜好,使用“复制”:cp /home/student/some-config /home/some-new-dir/some-config