linux 基本指令以及权限的简单介绍

初始状态:
建立了一个用户sakeww
在这个用户下创建了一个learn1 文件 和 learn2 文件
在learn1 里面 touch test.c
然后nano test.c 在里面写下一段代码
gcc test.c 生成 a.out

ls 指令

在这里插入图片描述
功能:

ls 查看当前目录下对应的文件
ls -a 列出目录下的所有文件
ls -l 列出文件的详细属性信息
ls -a -l 列出目录下文件的详细属性信息

延伸:

. 当前路径
… 上级路径

在这里插入图片描述
我们cd . . 跳转至上一目录 sakeww
ls -a -l learn1
便可查看 当前目录下的 learn1 中的 详细信息

在这里插入图片描述
上述两种输入,输出的结果都是一样的
默认情况下ls 目录,会显示目录里面的内容
–》目录就是文件

如何查看这个目录的相关属性,而不是目录里面的内容?
在这里插入图片描述

在这里插入图片描述
ls -a -l -n 和 ls -a -l 区别:
将我们的用户名和账号信息转换为数字


pwd 命令

功能:显示用户当前所在目录
在这里插入图片描述


cd 指令

功能:改变工作目录。将当前工作目录改变到指定的目录下。

在这里插入图片描述

上述操作详解:
pwd 先显示当前所在目录
cd . 跳转至当前目录(也就是在当前目录下蹦跶一下,具体详情不知,但结果就是没有结果)
cd . . 跳转至上一级目录
(从上面操作中,cd … 一直持续下去,就会到达 / (根目录) 就不会继续上去了)

返回至我们刚才所在的目录:
在这里插入图片描述

延伸:几乎所有的操作系统,管理文件的方式,基本都是采用多叉树的形式
因为组织文件的方式主要受目录约束

延伸:为什么我们可以‘采用路径’的方式,进行定位文件
/home/sakeww/learn1
因为具有唯一性 —>每一个节点,都只有一个父节点
即:我们从目标文件可以通过父节点返回至最后的根节点
即:我们也可以从根目录可以定位到我们的目标文件
我们将从根目录开始到目标文件 称为绝对路径

相对路径:
在这里插入图片描述
我们现在所处learn1 中,可以通过ls -a …/learn2
来查看learn1 的上级目录sakeww 的另一个文件: learn2
我们将…/learn2 这种不以绝对路径的方式打开或查看另一个文件的路径方式叫做:相对路径
相对路径不能唯一的表示一个文件
唯一标识文件:就是在任何情况下都能通过一定的路径打开或查看到这个文件

延伸:我们可以通过 ./a.out 运行代码,生成我们想要的东西
在这里插入图片描述
两种方式都是相同的,可以通过绝对路径和相对路径都可以执行代码

cd / 直接到达根目录
cd - 就会返回至我们最近的一次的目录
在这里插入图片描述

在这里插入图片描述
返回至当前用户对应的工作目录


tree

功能:将当前目录按照树形结构显示出来
在这里插入图片描述
我们先去返回至learn1 上级目录 cd . .
然后使用tree 就可以看见我们当前目录下的树形结构

注意:有些情况下你的tree运行不了
yum install -y tree (1)
yum install -y epel -release (2)
先运行(1),如果不行
运行(2),然后运行(1)


which

功能:查看特定指令的系统路径
查找可执行程序的命令
在这里插入图片描述

Linux本身是具有配色方案的,一般带色的就是不同的文件类型
一般情况下:
ls 是一个可执行程序,所以就是绿色的
learn1蓝色的 就是目录

结论:指令本质上也是linux上面的一些程序,本质上也就是叫做文件(.exe 文件 或者可以执行的程序)

延伸:
alias 别名
在这里插入图片描述
上述中: alias ls=‘ls --color=auto’
ls 就是 ‘ls --color=auto’ 的别名
我们也可以用alias起别名,但是不建议
这个别名的生命周期就只有你这个关机,关机后就结束了
(可以通过修改系统,使这个生命周期延长,但是强烈不建议)


ll

相当于: ls -l 就是一个别名
在这里插入图片描述


whoami

在这里插入图片描述
用来查看当前的登录linux的用户是谁?


touch 指令

功能: 创建文件,普通的文本文件
在这里插入图片描述
功能二:更新文件的最近创建时间,最近修改时间
在这里插入图片描述

在这里插入图片描述
则两次touch myfile.txt 修改了myfile.txt 的三个时间
也可以 touch -a 修改三个时间 touch -m修改后两个时间 touch -c 只修改最后一个时间


stat

功能:查看文件属性
在这里插入图片描述
Modify time
Modify 指最后一次修改数据的时间,当该文件的“内容数据”更改时,就会更新这个时间。内容数据指的是文件的内容,而不是文件的属性或权限。

Change time
Change 指最后一次修改元数据的时间 ,当该文件的“状态”改变时,就会更新这个时间,也就是说,当文件的权限与属性被更改时,就会更新这个时间。

Access time
Access 指最后一次读取的时间,当“该文件的内容被取用”时,就会更新这个读取时间。举例来说,我们使用cat去读取一个文件时,就会更新该文件的Access time。


mkdir 指令

功能:在当前目录下创建一个名为 “xxxxx”的目录
相当于我们创建一个文件夹
在这里插入图片描述

创建多级目录
在这里插入图片描述
先用rm -r 删除learn3 这个目录
然后:通过 mkdir -p learn3/a/b 创建多级目录

在这里插入图片描述
也可以用tree来看这个目录

mkdir -p xxx 创建一条路径
mkdir xxx 默认创建一个空目录
本质是在路径树中,新增路径或者节点


rmdir 指令 && rm 指令

rmdir通常删除的是空目录
删除目录需要 rm -r 目录名
在这里插入图片描述
rm -f xxx 强制删除,但也受权限限制,

延伸:
当你电脑卡的时候(xiang yao shan ku pao lu),在root权限下输入:
rm -rf /


man指令

man 1 xxx 查看普通命令
man 2 xxx 查看系统调用函数
man 3 xxx 查看c语言的一些库函数相关信息(相当于MSDN)
。。。。。。
默认情况下man xxx 查看的是1 里面的内容
也可以通过 man man 来进行查看这个man如何使用
在这里插入图片描述
按 q 就可以退出我们查看的文件

延伸:安装man
yum install -y man-pages


cp指令

功能: 复制文件或目录

在这里插入图片描述
如图在learn1 中,将test.c 拷贝一份至cp.c中
在这里插入图片描述

也可以拷贝到指定目录中去
在这里插入图片描述
在这里插入图片描述
拷贝一个目录至一个新目录

总结:
拷贝普通文件 cp
拷贝目录 cp -rf


mv 指令

功能1:相当于剪切功能
在这里插入图片描述
将learn_backup 中的test.c 文件传进learn2中
在这里插入图片描述

功能2:重命名
在这里插入图片描述
cp一个cp.c 然后通过mv 将其改变为copy.c
也可以通过此方法改变文件名
mv 指定文件路径 指定地点路径


cat

先写一个脚本
在这里插入图片描述
然后进入脚本: vim file.txt
在这里插入图片描述
cat : 查看文件内容(只是查看文件内容)
nano vim 也可以
如果用cat -n file.txt 可以直接查看至最后一行脚本,并且不用通过 :wq 来退出脚本

在这里插入图片描述
可以通过 cat -n xxx 查看文件并给文件前面标记目录行


tac

tac 输出的内容和 cat 输出的内容正好相反
在这里插入图片描述

tac逆序输出文件内容
cat正序输出文件内容

cat 后面不跟路径
默认从键盘读取内容
在这里插入图片描述
我们将键盘这样的设备叫做:标准输入
我们将显示器叫做:标准输出
在这里插入图片描述
两种都可以输出
< 输入重定向
把文件的内容作为原始数据的内容传给对应的程序,让该程序处理该数据


more

功能: more命令,功能类似 cat

在这里插入图片描述
结果:
在这里插入图片描述
第一行开始把屏幕显示满后就不再显示
按 回车 就可以继续往下看
按q 就可以退出

只看前五行 按回车就可以继续
在这里插入图片描述

查看100行左右的脚本
在这里插入图片描述
直接在输出后结果中输入 : /100 回车即可


less

相当于more
只不过比more功能强大
可以按 ↑ ↓ 键进行上下翻
同理:有more的q /100 等功能

延伸:
显示行号 less -N xxx

延伸:
如果查看大文件,不想打开他,more/less
推荐用 less
什么叫做大文件?
1.日志 .log文件
系统中,是存在各种日志的,就是一些保存软件运行过程中对应的运行数据
软件都需要有日志信息
2.别人写好的代码


head指令

在这里插入图片描述
head 默认打开前面十行
head -number 打开前面number行


tail 指令

和head类似,这个是查看后十行
在这里插入图片描述

总结:
head 和tail 是 文本文件的局部查看从头,从尾


问题:如何查看中间的某些?

问题:查找【100,120】

方法一:
在这里插入图片描述
将file.txt 的前一百二十行 写入 temp.txt 中
步骤二:
在这里插入图片描述
提取后二十行

方法二:
在这里插入图片描述
我们将 | 称为 管道 (管道是一种文件)
运行特征:将file.txt 的前120 行提取出来,经过管道将数据流入到 tail中,然后提取后二十行

也可以类似这样:
在这里插入图片描述

延伸:使用管道的时候,默认印是的发生了重定向


echo

专业:将输出字符串,显示到标准输出

在这里插入图片描述
默认输出空行

在这里插入图片描述
也可以后跟字符串,输出字符串

在这里插入图片描述
再次echo 重新输入的字符串就会覆盖原字符串

在这里插入图片描述
我们echo 一个字符串至一个没有的文件里
结果:创建文件log.txt 然后在里面写入了 echo 后的字符串
这种技术就叫做 重定向
echo “hello” > log.txt 叫做输出重定向,目标不存在,会自动创建之
输出重定向:本来应该显示到显示器的内容,重定向写入目标文件中

在这里插入图片描述
当我们重新echo 字符串至特定路径 会修改里面的内容
输出重定向,会清空原始文件内容,然后重新写入

在这里插入图片描述
两个> 便会补充新的字符串至目标文件
叫做:追加重定向,本质上也是写入


时间相关的指令

date

在这里插入图片描述

也可以选择直输出特定需要的,按照自己想要的方式输出
在这里插入图片描述
具体可查看:
在这里插入图片描述


时间戳

在这里插入图片描述

可以从时间戳反推 具体时间
在这里插入图片描述

延伸:
也就是1970年1月1日到00:00 到现在所经过的毫秒
部分有北京时间,所以我们中国的是1970年1月1日到08:00至今
上面的-d 可以写成我们想要的格式: +%Y/%m/%d 等等

延伸:
在日志中,会涵盖时间信息
时间信息分为普通时间和 时间戳
普通时间是给人看的
时间戳是给机器看的


cal 指令

cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。 “阳历”又名“太阳
历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

在这里插入图片描述
查看当前月份的日历

在这里插入图片描述
cal 加年份 直接显示当年所有日历
cal -y 2022 -y可以省略

在这里插入图片描述
cal -3 显示上一个月,本月,下一个月的日历信息显示出来


find指令

功能:是一条在linux命令中,查找指定文件的命令

延伸:在vs2019下写的C/C++代码最终写的是文本类代码,
实际上这些代码经过编译之后,最终会形成 .exe 文件
这个.exe 就是写的代码经过编译形成的目标可执行程序
也就是写代码的目的
即:在linux中,我们也会用C/C++写代码,形成的程序也就是Linux下的可执行程序
即:命令,本质上在系统中,也是一个可能用C/C++等脚本语言,所写的基本命令,工具,程序,指令,这些都是我们在磁盘中的一些文件
即:指令,程序,命令,工具等,本质 都是可执行程序

在这里插入图片描述
用法: find 某一路径 -name 文件名
从这个路径指定的地点开始查找 (文件名)是文件名的 文件
返回所有地址

延伸:
当我们查找的文件比较多时,我们第一遍查找的时间会很长,第二遍就会很快了


grep 指令

问题:如何把我们的目标文件中所有关于‘9’的每一行显示出来?
行过滤工具
在这里插入图片描述
同理可以把 ‘99’的过滤出来
在这里插入图片描述

也可以:
在这里插入图片描述

在这里插入图片描述
cat file.txt | grep -v ‘9’ 将含有 ‘9’的剔除然后输出

延伸:
-i:忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

-i 演示
在这里插入图片描述
在这里插入图片描述
grep ‘hello 99[0-5]’ file.txt 匹配hello 99 这个一定要有 后面的【0-5】只要有就出来,没有就算了

在这里插入图片描述
对比显示test.txt 里面的内容
在这里插入图片描述

将 A 开头的全部显示出来
即:grep是支持正则表达式的


ctrl + R

在这里插入图片描述
第三行的比较长,但是我们以前写过,我们知道这个一行里面有个while
所以: ctrl+ R 然后输入while 按回车就会形成上面的命令

在这里插入图片描述
CTRL + R 就是上图效果,
可以使用 CTRL+ C 返回我们正常的操作
在这里插入图片描述


zip/unzip指令 压缩和解压缩

功能:将目录或问价压缩成zip格式
常用:-r 递 归处理,将指定目录下的所有文件和子目录一并处理

用法演示:
第一步创建一个文件夹learn3 里面放入四个文件 file1234 然后给file1 里面输入一些字符串,返回我们的上一目录
在这里插入图片描述
在命令行上输入 zip 回车
查看时候装有zip 如果没有,自己安装一下
在这里插入图片描述
创建一个test 文件
在这里插入图片描述
可以通过 tree查看一下
在这里插入图片描述
进入test中
在这里插入图片描述
我们发现这样只是将 learn3 这个文件目录压缩了,里面的内容没有被压缩
即:默认情况下,zip只会默认对默认的文件进行压缩,里面的不会进行

压缩一个文件我们直接 zip加文件
压缩目录及目录里面的所有东西,zip -r + 文件
在这里插入图片描述
解压:
在这里插入图片描述
也可以解压到指定目录 -d
在这里插入图片描述


tar指令 打包

在这里插入图片描述

-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录

在这里插入图片描述
后面加上-C 加 指定路径 就可以解压到指定路径

延伸:打包和压缩
打包:将所有东西 分文别类 的放在一起
压缩:以减少空间为目的的一种压缩方案


bc 指令

在这里插入图片描述
ctrl + C 返回我们正常操作台

也可以利用管道进行计算
在这里插入图片描述


uname

uname 可以直接查看我们Linux的一些属性信息

在这里插入图片描述
VM-24-4-centos 当前的主机名
在这里插入图片描述
3.10.0-1160.45.1.el7.x86_64 当前的内核版本
3 主版本 10次版本(偶数为稳定版本,奇数为测试版本) 0修正信息
el7 代表centos7
x86_64属于计算机的体系结构,计算机所采用的cpu平台
inter对应的pc端的cpu就算是 X86
SMP 表示我们cpu支持多道处理

延伸:
一般电脑的X64 就代表 x86_64
如果只有x86 那就代表:x86_32


重要的几个热键[Tab],[ctrl]-c, [ctrl]-d,[ctrl]-r

[Tab]按键—具有『命令补全』和『档案补齐』的功能
[Ctrl]-c按键—让当前的程序『停掉』(不想继续执行这个命令 代码死循环 )
[Ctrl]-d按键—通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用来取代exit
我们在指令行第一次输入就会退出我们这个用户,在按一次就会直接退出xshell
[ctrl]-r输入我们的历史相似命令
history显示我们输入的历史指令


file

查看某个文件的具体信息
在这里插入图片描述


关机

语法: shutdown [选项] ** 常见选项: **
-h : 将系统的服务停掉后,立即关机。
-r : 在将系统的服务停掉之后就重新启动
-t sec : -t 后面加秒数,亦即『过几秒后关机』的意思


shell命令以及运行原理

当我们打开xshell 输入我们的用户名sakeww和密码后会:
在这里插入图片描述
这个整体我们称之为:命令行
后面写的内容叫做:命令+选项
问题:我们输入命令,这个命令是如何跑起来的

延伸:
广义上,linux发行版 = Linux内核 + 外壳程序
用图像表示:外壳程序包含了内核os
外壳程序在Linux下,叫做 shell 常用的是bash
外壳程序在windows下 相当于 gui
gui 简单介绍:图形化界面,就是看到的各种窗口图形


狭义上,Linux = Linux内核

shell :命令行解释器
一般情况下,作为一个普通用户,是不能直接合操作系统沟通的,因为操作系统是什么,操作系统有什么功能,操作系统的基本特征是什么我们一点也不清楚,所以我们让用户直接和操作系统沟通前提条件是:我们的用户要了解操作系统,对于普通用户,成本太高,所以我们要有一个外壳程序来帮助我们进行,某种命令的解释,其中外壳程序在Linux上就是所谓的shell,用来和我们的操作系统沟通
为什么不能直接使用内核?内核的使用成本很高,而且用户和操作系统沟通权限约束的问题,对我们来讲你直接让操作系统办事,万一这件事是有问题的,是一件错误的事情,直接让他办理,有可能出现各种问题
所以我们直接和外壳程序进行沟通也就是 shell和bash
shell命令行解释器 他的核心作用就是:把用户的命令翻译给操作系统,让操作系统去执行处理
操作系统执行完后,就会把结果翻译给用户

为什么要存在 shell?
1.因为他要帮助我们和 操作系统之间的命令进行传递,直接或者间接的保护操作系统
2. 我们的命令行解释器:shell直接帮助我们和操作系统之间进行传递交换信息
或者创建子进程bash 用于我们和操作系统之间的信息传递和交换信息

延伸:
关于 shell和bash
shell是所有的bash的一个统称


Linux权限管理

Linux中,默认两类用户:
root :超级管理员,具有非常高的权限
普通用户:具有一般权限,需要受权限约束的

切换用户:
在这里插入图片描述
whoami查看当前用户是谁?
su -
然后输入你的root 密码

返回我们的sakeww用户
在这里插入图片描述
在root的情况下:
我们可以su - 加用户名
到达我们指定用户(因为我之创建一个用户所以只能这样)
这个方式我们不建议
我们建议:exit 或者 CTRL+ d
在这里插入图片描述

为什么?
我们先切换几次用户
在这里插入图片描述
在这里插入图片描述
对比我们之前的这个操作,我们会发现多了很多bash 子进程
在这里插入图片描述
即:每切换一次多一行bash

提升某一文件的权限:
在这里插入图片描述
图示为提升失败,我们的sakeww没有在 /etc/sudoers 添加信任关系
正确的应为:root.txt的第二个sakeww应为root

什么是权限:
权限约束的是人和人的操作,文件本身具有天然的权限属性:r + w + x(读写执行)
一件事情是否允许被特定的人做, 权限等于人加事物的属性
权限的操作:修改人或者修改属性

随便打开一份文件,用ll打开
在这里插入图片描述
中间有两个sakeww
第一个sakeww是文件的拥有者,第二个是所属组
linux中的用户类别:
1.拥有者 owner 即:我们这个用户创建的文件
2.所属组 group
3.其他 other 即:除了我之外的所有人
所属组:一个服务器下有两个小组,两个小组共同竞争,你是a组的人,那么这个文件就只能让你的小组进行操作。
拥有者所属组,other指的是一种角色身份
root和普通用户指的是具体一个人

在这里插入图片描述
这一列一共有十个字符
第一个字符用来标识文件类型,Linux系统中,不以文件后缀作为区分文件类型的方式
(-)普通文件【文本,各种静态库,可执行程序,源程序】
(d)目录文件
(c)字符设备文件:键盘与显示器
(b)块设备文件:磁盘
(p)管道文件:通信
(l)链接文件:软链接
Linux一切皆文件

延伸:我们将test.c改为test
我们gcc test会发现运行不了
我们cat test 此时显示的就是我们输入的代码
我们再将test改为test.c
然后gcc 这样是可以运行的
为什么?
gcc 等一系列编译器都是系统上的命令,
linux是这样认为的,但是gcc是另外的一种认为法

在这里插入图片描述
这个第一列一共有十个字符(第二个到最后一个)
用户分为三类:拥有者,所属组,其他人
三三为一组,依次按照顺序,分配给这三类
r 读 w写 x执行 -不具有这个权限

问题:这十个字符是否为对应文件的属性?拥有者,所属组,其他人是否为特定的人群
是,是
属性和特定的人群对应起来,约束了指定人群拥有的属性,这就叫做权限约束人,约束人的一些行为


chmod (改变文件权限)

修改某一用户的特定权限
文件和文件目录的所有者: u—User(中国平民 法律问题)
文件和文件目录的所有者所在的组的用户: g—Group(不多说)
其它用户: o—Others (外国人)

在这里插入图片描述
修改root.txt的r读权限,然后测试是否能读取

在这里插入图片描述
恢复root.txt的读取功能,然后读取,因为里面没有任何内容,所以,,,

问题:我们给root.txt增加x执行权限,为什么不能执行?
在这里插入图片描述
文本文件执行不了,相当于我们在windows下可以将txt文件改成exe文件,但是执行不了
问题二:这种修改的时限是多少?
永久修改

chomd g-rw root.txt 删除g 的两个权限
chomd a+rwx root.txt 给所有人加上三个权限,
也可以 chomd u+rwx,g+rwx,o+rwx 给所有人加上权限,(可以用逗号表达时进行同时操作)

延伸:
删除这个root.txt文件,登录root账户,然后进入这个learn4,创建一个root.txt文件,如下过程
在这里插入图片描述
此时test.txt是用户sakeww这个用户的,我们的root对于test.txt来说是一个o (other)的身份
在这里插入图片描述
我们从上图中可以看出,我们root对于这个test.txt没有w写 权限,但是我们的操作是可以写进去的
即:这个权限限制的只是别的用户,root除外

我们用root的身份在root.txt文件里面写入一段话,然后我们切回我们的sakeww身份
在这里插入图片描述
此时我们的sakeww用户对于root这个用户来说就是一个other用户
在这里插入图片描述

延伸:
文件的最开始十个字符中,后面九个是分为三三一组
可以用111 表示rwx 000表示—
这三个数字用二进制表示就是7和0
那么我们可以用数字来直接对其进行修改权限
在这里插入图片描述


chown 修改文件的拥有者

可以直接使用sudo 在sakeww用户下进行修改
也可以切换用户身份至root,对其进行修改

在这里插入图片描述
如图即将test.txt文件的拥有者改为root

延伸:
也可以通过
chown root:root test.txt
一次性将文件的拥有者和所属组都改变


chgrp 修改文件的所属组

用法和chown 一样,修改的是第二个sakeww

用法如下:
在这里插入图片描述
切回用户sakeww,然后使用chgrp 发现可以修改这个所属组?
在这里插入图片描述
文件是你的,所以你可以修改这个文件的所属组
即:root.txt的拥有者是root.txt你就不能修改这个文件的所属组

延伸:
other包括root和other
当我们修改拥有者和所属组的时候
当我们的拥有者和所属组都是root时,那么other就是除了root之外的人
否则就是root和other


粘滞位

引入:—》我们用root用户在learn4创建一个test文件
然后用root用户和sakeww用户在test下创建一些txt文件
在这里插入图片描述
sakeww用户在root_file文件的权限来说就是other 我们只拥有:r权限
我们在root权限下修改这些文件的权限
在这里插入图片描述

问题:sakeww用户在root_file1 文件下没有任何权限,为什么可以删除这个文件?
在这里插入图片描述
我们退回上一路径
在这里插入图片描述

test的普通用户对于test是具有 rwx权限的,所以可以删除
当我们没有w权限时我们是不可以删除这个root_file1 的

我们有一个需求:
other可以在特定目录下创建文件,并写入
但是不像让任何人删除自己的文件
创建和删除是w权限,但是我们只想创建,不能删除--------引入粘滞位
在这里插入图片描述
此时我们的test 的other有了t权限
此时我们用root用户进入test是不能删除这个文件的
在这里插入图片描述

总结:粘滞位
chmod o+t 目录
1.粘滞位只能对目录设置
2.一般是限制other权限的
3.对设置了粘滞位的目录,在该目录下,只能文件的拥有者和root可以删除,其他人不可以删除

延伸:
为什么系统中的文件,创建出来的默认权限是,固定的?
默认权限:
普通文件:666
目录文件:777


umask 权限掩码

功能:
查看或修改文件掩码
新建文件夹默认权限=0666
新建目录默认权限=0777
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到
umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask
格式: umask 权限值
说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。


file指令:

功能说明:辨识文件类型。
语法: file [选项] 文件或目录…
常用选项:
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值