文件权限中的 R-可读 W-可写 X-可执行
可读,可写,可执行。是不是如果某用户(用户组,外人)对该文件没有X权限 就不能对该文件进行W或者R?(我觉得W,R跟X无关)
如果我的理解对,那么X—可执行是指具体是是什么
文件的权限
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
- xc1427
- 帖子: 276
- 注册时间: 2008-10-11 4:11
- 来自: 瑞金无线电学校
- 联系:
Re: 文件的权限
怎么说呢。如果你在.txt文件中写入规范的ShellScript,它也会执行的。但是随便写入一些不规范的内容,执行会出错。
Linux里文件的扩展名你可以随意。只要选对了应用程序,那么就可以正确地读写或执行。一般可执行的就是ShellScript和二进制文件了。
比如你在自己用户目录下建立了个a.txt:
用个文本编辑器写入echo "abc"
看一下权限:
如果是不能执行的,那么更改它的权限:
执行:
屏幕就会输出abc。说明shell解释器正确读取了a.txt。
但如果你随便写些东西。就会提示你出错。
Linux里文件的扩展名你可以随意。只要选对了应用程序,那么就可以正确地读写或执行。一般可执行的就是ShellScript和二进制文件了。
比如你在自己用户目录下建立了个a.txt:
代码: 全选
$ touch a.txt
看一下权限:
代码: 全选
$ ls -l a.txt
代码: 全选
$ chmod 755 a.txt
代码: 全选
./a.txt
但如果你随便写些东西。就会提示你出错。
You never know if you don't try
-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 文件的权限
读和写很好理解
对于普通文件来说,x 表示可执行,如果这个文件是一个 ELF 格式的文件,只要有 x 权限就可执行了,不需要 r 和 w 权限。如果是一个脚本,需要同时有 r 和 x 权限才可执行,但是只有 r 没有 x 权限时仍然可以用类似 sh file 的形式来执行。
任何文本文件加上 x 权限后都会当作一个脚本,所以有些人为了有写权限就用 chmod 777 * 这样的命令其实很不好,它除了赋予了任何写的权限外,还一个问题就是增加了不必要的 x 权限。如果某个文件中包含一条危险命令,执行它可能带来不可预料的损失。例如,如果有一个用 ASCII 码记录的学习笔记中包含下面的内容:
恰好这个作笔记之用的文件加上了 x 权限,那么执行它后就会显示:
然后删除当前目录下的所有文件。
目录的 x 权限表示可搜索。简单的说就是你有了目录的 x 权限,你就可以“用”该目录下的内容。例如:
对于普通文件来说,x 表示可执行,如果这个文件是一个 ELF 格式的文件,只要有 x 权限就可执行了,不需要 r 和 w 权限。如果是一个脚本,需要同时有 r 和 x 权限才可执行,但是只有 r 没有 x 权限时仍然可以用类似 sh file 的形式来执行。
任何文本文件加上 x 权限后都会当作一个脚本,所以有些人为了有写权限就用 chmod 777 * 这样的命令其实很不好,它除了赋予了任何写的权限外,还一个问题就是增加了不必要的 x 权限。如果某个文件中包含一条危险命令,执行它可能带来不可预料的损失。例如,如果有一个用 ASCII 码记录的学习笔记中包含下面的内容:
代码: 全选
The follow command is dangerous:
rm -rf *
代码: 全选
bash: The:找不到命令
目录的 x 权限表示可搜索。简单的说就是你有了目录的 x 权限,你就可以“用”该目录下的内容。例如:
代码: 全选
mkdir dir
echo some text > dir/file
chmod u=x dir
ls dir
ls: 无法打开目录 dir: Permission denied
cat dir/file
some text