Linux常见命令及文件权限浅析(CentOs系统下)

基础操作命令:

命令构成:命令名+[-选项]+操作对象,多个选项可以联合使用

目录操作指令:ls-la pwd mkdir -p rm -rf cp -r mv cd

ls 命令:列出当前目录下的所有子目录和文件

ls -a:列出包括.开头的隐藏文件

ls -l :列出文件和目录的的详细信息,包括用户使用权限等

pwd 命令:打印当前目录所在路径

mkdir命令:创建目录命令

mkdir -选项 dirname

mkdir -p :创建一个多级目录

rm 命令:删除文件命令

rmdir 命令:删除目录命令

rm -r :递归删除目录下的所有文件后,删除目录

rm -i :删除时增加一个提示信息,即询问用户

rm -f :删除时忽略提示信息,即使文件为只读文件,也强制删除(慎用)

cp 命令:文件目录拷贝命令(拷贝对原有文件或目录无影响,保持原有目录结构)

cp filename filename1:将filename文件拷贝到filename1文件中

cp -r :递归将目录中的文件拷贝到另一个目录中,这就实现了目录的拷贝

cp -i :拷贝时增加一个提示信息,即询问用户

cp -f :拷贝时强行复制文件或目录,不管目标文件或目录是否存在

mv 命令:将一个文件或目录移动到另一个指定位置(可理解为剪切)

mv -i :移动时增加一个提示信息

mv -f :强制移动,不管目标文件或目录是否存在

cd 命令:改变当前的工作路径(进入到指定目录位置)

每个目录下都有一个 . 目录和一个 .. 目录,. 目录表示当前目录,.. 目录表示上级目录

~表示家目录

cd .. :返回上级目录 cd ~:返回家目录

touch 命令 :touch一个文件,若文件不存在则创建该文件,若文件存在则刷新文件的时间属性

touch -c :不创建文件

cat 命令 :打印文件内容到终端显示

cat -b :对非空的输出行编号

cat -n :对所有输出行编号

cat -s :输出时多行空行并做一行

more 命令 :分页显示文件内容 Ctrl+f/Ctrl+b上下翻页,回车换行向下滚动;q退出

less 命令:分页显示文件内容,并可按字符串查找

Ctrl+f/Ctrl+b上下翻页,↑↓或j、k上下滚动;q退出

/String向下查找字符串 ?String向上查找字符串

head 命令 :显示文件的前n行内容,默认是十行

head -n num:显示文件的前num行内容

tail 命令 :显示文件末尾的前n行内容,默认是十行

tail -n num:显示文件的末尾num行内容

echo 命令 :打印数据到终端显示

echo"data"

stat 命令 :显示文件当前状态

文件压缩/解压缩相关指令:

zip/unzip 命令

gzip/ungzip 命令

bzip2/bunzip2 命令

直接+文件名

打包指令:

tar 命令(将多个文件或目录中包含的内容打包成为一个文件)

-c 打包 -x 解包

-z 打包/解包时使用gzip压缩/解压缩 -j 打包/解包时使用bzip2压缩/解压缩

-v 打包或解包时显示详细信息

-f 用于指定压缩包名称

综上,所以一般使用压缩/解压缩命令时

tar -czvf newfilename .tar.gz filename1 filename2 dirname(压缩)

tar -xzvf newfilename .tar.gz filename1 filename2 dirname(解压缩)

匹配查找指令:

grep 命令:grep string /filename (从指定文件中匹配包含有string字符串内容的行)

grep -i :忽略大小写匹配

grep -R:对当前目录下的所有文件进行一个递归的匹配

find 命令 :(文件查找命令)

find ./ -name "string" 当前目录下,查找名称为string的文件

find ./ -name ”*string*“ *是通配符,匹配任意字符串,实际上是一种模糊查找

man 命令 :查看命令手册

reboot 命令:重启

shut -h now 命令:关机

ifconfig 命令:查看网卡配置信息

Ctrl+C:中断当前操作

重定向:改变数据流向,将原本要打印到终端的数据,不再打印,而是写入指定文件

>> :追加重定向 ls>>a.txt,原本将要在终端打印的文件或目录信息不再打印,而是写入到a.txt中

> :清空重定向 ls>a.txt,先将a.txt清空,再写入

管道符: | 用于连接两个命令,将左边命令的结果传递给右边命令

head -n 3 a.txt | tail -n 1 //先打印文件的前三行,再打印文件的最后一行,即打印文件的第三行

文件权限:

通过ls -l 命令显示文件具体信息,可以看到显示了文件的权限信息

Linux常见命令及文件权限浅析(CentOs系统下)_第1张图片

 

drwx r-x r-x 第一位的 d 表示该文件是个目录文件  - 则表示普通文件

后九位则是权限信息表示:包含了能对当前文件进行操作的用户以及用户对文件所能进行的操作

每三个字母代表一个用户

用户分类:文件所有者 -u(user) 文件所属组 -g (group) 其他用户 -o(other)

可读权限 -r :可浏览

可写权限-w :可内部创建/删除文件 可修改

可执行权限 -x:可进入

前三个字母对应文件所有者,中间三个对应文件所属组,后三个对应其他用户

 

rwx                 r-x                 r-x

所有者            所属组          其他用户

r-可读              r-可读           r-可读

w-可写            不具备可写    不具备可写

x-可执行          x-可执行       x-可执行

权限表示实际使用二进制比特位来存储:rwx r-x r-x 111 101 101 ---》755

三个比特位刚好又是一个八进制数字,对文件权限进行操作的时候通常就是使用的八进制简化方式

文件权限操作命令

umask 查看或设置系统中文件的默认创建权限

umask是一个掩码,掩码取反(或用777减去掩码)即为文件的创建权限

0002意味着一个文件创建出来,默认的权限为000 000 010(775)----》rwx rwx r-x

u:可读可写可执行        g:可读可写可执行        o:可读可执行,不可写

但是终端中创建的文件,会默认去掉可执行权限,所以创建出来如下

三种用户都没有-x 可执行权限

 chmod chmod u+w Rainbow 给文件所有者新增可写权限

 chmod g-w Rainbow给文件所属组撤销可写权限

 chmod a+w Rainbow 给所有用户新增可写权限

 chmod 777 file 通过完整的八进制直接定义文件的权限,达到修改文件权限的目的

Linux常见命令及文件权限浅析(CentOs系统下)_第2张图片

 

你可能感兴趣的:(linux,c语言)