目录
👉概念:👈
👉群组概念👈
👉1、ls -al👈
👉2、su-👈
👉3、ls👈
👉4、ll👈
👉chmod :改变文件的权限,SUID,SGID,SBIT等等的特性👈
👉cd:切换目录👈
👉 pwd:显示当前目录👈
👉cp:复制👈
👉rm:删除👈
👉mv:移动👈
👉 总结,以上指令:👈
💕💕💕💕需要更详细的文档私信我💕💕💕💕
概念:
1.文件拥有者的概念:
初次接触 Linux 的朋友大概会觉得很怪异,怎么「Linux有这么多使用者,还分什么群组,有什么用?
这个『用户与群组』的功能可是相当健全而好用的一个安全防护呢!怎么说呢?由于Linux是个多人多任务的系统,因此可能常常会有多人同时使用这部主机来进行工作的情况发生,为了考虑每个人的隐私权以及每个人喜好的工作环境,因此,这个『文件拥有者』的角色就显的相当的重要了!
例如当你将你的e-mail情书转存成文件之后,放在你自己的家目录,你总不希望被其他人看见自己的情书吧?这个时候,你就把该文件设定成『只有文件拥有者,就是我,才能看与修改这个文件的内容],那么即使其他人知道你有这个相当「有趣』的文件,不过由于你有设定适当的权限,所以其他人自然也就无法知道该文件的内容啰!
群组概念
为何要配置文件案还有所属的群组﹖其实,群组最有用的功能之一,!举例来说,假设有两组专题生在我的主机里面,第一个专题组别为projecta,里面的成员有class1, class2,class3三个;第二个专题组别为projectb,里面的成员有class4, class5, class6。这两个专题之问是有竞争性质的,但却要缴交同一份报告。每组的组员之间必须要能够互相修改对方的数据,但是其他组的组员则不能看到本组自己的文件内容,此时该如何是好?
我可以经由简易的文件权限设定,就能限制非自己团队的其他人不能够阅览内容而且亦可以让自己的团队成员可以修改我所建立的文件! 同时,如果我自己还有私人隐密的文件,仍然可以设定成让自己的团队成员也看不到我的文件数据。
另外,如果teacher这个账号是projecta 与 projectb这两个专题的老师,他想要同时观察两者的进度,因此需要能够进入这两个群组的权限时,你可以设定teacher这个账号,同时支持projecta 与 projectb这两个群组,也就是说:每个账号都可以有多个群组的支持
1, Linux文件属性
既然要让你了解Linux的文件属性,有个重要的也是常用的指令就是ls 这一个察看文件的指令,在你以dmtsai登入系统,然后使用su-切换身份成为root后,下达ls -al ,如下👇:
1、ls -al
输入ls -al就会看到如下👇:
2、su-
su-切换身份
3、ls
ls查看文件👇 :
4、ll
ll是查看文件属性以及文件名称包括权限👇:
当为 d 则是文件夹目录,例如上表档名为.config的那一行;
当为 - 则是文件,例如上表档名为initial-selup-ks.clg那一行;
若是 l 则表示为连结档(link file);
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
接下来的字符中,以三个为一组,且均为rwxl的三个参数的组合。其中, r 代表可读(read)、w 代表可写(write)、x 代表可执行(execute)。要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 。
详细示例图👇:
2, 如何改变文件属性与权限
chgrp :改变文件所属群组
-R :进行递归( recursive)的持续变更,亦即连同次目录下的所有文件、目录
都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。
结果如下👇:
可以看到root变成了bin就是用命令:chgrp users file 来进行实现
chown :改变文件拥有者
选项与参数:
-R:进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都变更
结果如下👇:
我们可以看到root变成了bin就是用命令:chown bin file 来进行实现
chmod :改变文件的权限,SUID,SGID,SBIT等等的特性
以下是权限代表数字代表的字母👇:
每种身份(owner/group/others)各自的三个权限(rlw/x)分数是需要累加的,例如当权限为:[-rwxrwx---]分数则是:
选项与参数:
xyz :就是刚刚提到的数字类型的权限属性,为rwx属性数值的相加。
-R :进行递归( recursive)的持续变更,亦即连同次目录下的所有文件都会变更
实践👇:
可以看到xiaomei的权限已经得到更改👇
cp:复制指令
步骤如下👇:
我们看到当前wangwu文件夹没用aa.txt现在用cp复制过去
结果如下👇:
现在可以看到已经将值给复制过去了
3、 目录的相关操作
cd:切换目录
./ 代表此层目录
../ 代表上一层目录
- 代表前一个工作目录
~ 代表目前用户身份所在的家目录
~account 代表account这个用户的家目录(account是个账号名称)
常用如下👇:
pwd:显示当前目录
可以说用处不大,在你切换目录的时候就能看到你现在所在的目录
-P :是查找它的全部路径如下👇:
mkdir:建立一个新的目录
建立一个新的目录👇:
-m :配置文件案的权限喔!直接设定,不需要看预设权限(umask)
就是创建一个新的目录自己设置这个目录的权限👇:
-p :帮助你直接将所需要的目录(包含上层目录)
创建多层目录实现无限套娃👇:
rmdir:删除一个空的目录
rmdir执行如👇:
-p :连同『上层』『空的』目录也一起删除
执行结果如下👇:
$PHAT:执行文件路径的变量
echo显示、印出的意思
命令执行如下👇:
cp:复制
现在可以看到wangwu里面没有aa.txt输入指令cp aa.txt ./wangwu,👇:
现在就可以看到wangwu里面多了个aa.txt,👇:
rm:删除
简化的rmdir:
mv:移动
把一个文件挪到另一个文件里面然后更改名字
总结,以上指令:
命令 | 作用 | 参数 |
ls -al | 查询权限 | |
su- | 切换身份 | |
ls | 查看文件 | -a :全部的文件,连同隐藏档(开头为_,的文件)一起列出来(常用) -A:全部的文件,连同隐藏档,但不包括.与..这两个目录 -f:直接列出结果,而不进行排序( ls预设会以档名排序! ) -F:根据文件、目录等信息,给予附加数据结构 -r:将排序结果反向输出 -s:以文件容量大小排序,而不是用档名排序; |
ll | 查看文件属性以及文件名称包括权限 | |
chgrp | 改变文件所属群组 | -R :进行递归( recursive)的持续变更,亦即连同次目录下的所有文件、目录 都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。 |
chown | 改变文件拥有者 | -R:进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都变更。 |
chmod | 改变文件的权限,SUID,SGID,SBIT等等的特性 | xyz :就是刚刚提到的数字类型的权限属性,为rwx属性数值的相加。 -R :进行递归( recursive)的持续变更,亦即连同次目录下的所有文件都会变更 |
cd | 切换目录 | ./ 代表此层目录 ../ 代表上一层目录 - 代表前一个工作目录 ~ 代表目前用户身份所在的家目录 ~account 代表account这个用户的家目录(account是个账号名称) |
pwd | 显示当前目录 | -P :显示出确实的路径,而非使用链接( link)路径。 |
mkdir | 建立一个新的目录 | -m :配置文件案的权限喔!直接设定,不需要看预设权限(umask) -p :帮助你直接将所需要的目录(包含上层目录) |
rmdir | 删除一个空的目录 | -p :连同『上层』『空的』目录也一起删除 |
$PHAT | 执行文件路径的变量 | echo显示、印出的意思 |
cp | 复制 | -a:相当于-dr --preserve=all_的意思,至于 dr 请参考下列说明;(常用) - f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次; -i :若目标文件(destination)已经存在时,在覆盖时会先询问动作的进行(常用)-l:进行硬式连结(hard link)的连结档建立,而非复制文件本身; -r:递归持续复制,用于目录的复制行为;(常用) --preserve=all :除了-p 的权限相关参数外,还加入SELinux的属性,links,xattr等也复制了。最后需要注意的,如果来源档有两个以上,则最后一个目的文件一定要是「目录」才行! |
rm | 删除 | -f:就是force 的意思,忽略不存在的文件,不会出现警告讯息; -i:互动模式,在删除前会询问使用者是否动作 |
mv | 移动 | -f : force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖; -i:若目标文件(destination)已经存在时,就会询问是否覆盖! -u﹔若目标文件已经存在,且 sourcc比较新,才会更新( updatc) |