当我试图使shell脚本显示错误时,我必须做什么?
[rehamadel@localhost bin]$ sudo vi my_script.sh
Run Code Online (Sandbox Code Playgroud)
[sudo] password for rehamadel:
[rehamadel@localhost bin]$ ls -l my_script.sh
-rw-r--r--. 1 root root 52 Jul 30 19:25 my_script.sh
[rehamadel@localhost bin]$ chmod u+x my_script.sh
chmod: changing permissions of ‘my_script.sh’: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
解决操作不允许错误:
sudo chmod u+x my_script.sh
Run Code Online (Sandbox Code Playgroud)
您通过以下方式创建了文件
sudo vi my_script.sh
# editing
Run Code Online (Sandbox Code Playgroud)
这意味着,文件的所有者和组是root.默认情况下,您不能更改它的文件.您需要更改权限(chmod执行此操作)或更改所有者:
sudo chown you:yourgroup my_script.sh
Run Code Online (Sandbox Code Playgroud)
这应该做到这一点.省去麻烦,无需通过sudo创建文件.
您已经my_script.sh以root用户作为所有者创建了文件(因为您使用了sudo),这就是为什么您不能以自己的身份更改权限。
因此,使用sudo chmod u+x my_script.sh,但请注意,这将使文件仅对root用户可执行。
要使每个人都可以执行该文件,请使用sudo chmod a+x my_script.sh.
| 归档时间: |
|
| 查看次数: |
47984 次 |
| 最近记录: |