Linux下的常见指令以及权限
一.常见的指令
1.ls指令
语法:ls[选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件,对于文件,将列出文件名以及其他信息。
常用选项:
1.-a 列出目录下的所有文件,包括以.开头的隐含文件
2.-d 将目录文件像文件一样显示,而不是显示其下的文件,如:ls-d 指定目录
3.-i 输出文件的i节点的索引信息,如 Is-ai指定文件
4.-k 以k字节的形式表示文件的大小
5.-l 列出文件的详细信息
6.-r 对目录的反向排序
7.-t 以时间排序
8.-s
9.-R 列出所有子目录下的文件
10. -1 一行只输出一个文件
2.pwd命令
语法:pwd
功能:显示用户所在的目录
3.cd指令
Linux系统中,磁盘上的文件和目录被组成一颗目录树,每个节点都是目录或文件
语法:cd 目录名
功能:改变工作目录,将当前工作目录改变到指定目录下
举例:
cd .. :返回上级目录
cd /home/litao/linux/ :绝对路径
cd ../day02/ :相对路径
cd~:进入用户家目
cd-:返回最近访问目录
4.touch指令
语法:touch[选项]...文件...
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件
常用选项:
1.-a 或--time=atime或--time=access或--time=use只更改存取时间。
2.-c 不建立任何文档
3.-d 使用指定的时间,而非现在的时间
4.-m 或--time=mtime或--time=modify 只更改变动时间。
5.-r 把指定文档或目录的日期时间,设置成和参考文档或目录的日期时间相同
5.mkdir指令
语法:mkdir[选项]dirname
功能:在当前目录下创建一个名为“dirname”的目录
常用选项:
-p --parents可以是一个路径名称,此时假如路径的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录
举例:
mkdir -p test/test1 : 递归建立多个目录
6.rmdir指令 && rm指令(重要)
rmdir是一个与mkdir相对应的命令,mkdir是建立目录,而rmdir是删除命令
语法:rmdir [-p][dirName]
适用对象:具有当前目录操作权限的所有使用者
功能:删除空目录
常用选项:
-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
rm命令可以同时删除文件或目录
语法:rm [-f-i-r-v][dirName/dir]
适用对象:所有使用者
功能:删除文件或目录
常用选项:
1.-f 删除文件属性为只读、
2.-i 删除前逐一询问确认
3.-r 删除目录及其下所有文件
7.man指令(重要)
linux的指令有很多参数,当我们需要查找的时候可以联机手册获取帮助,访问Linux的手册的指令为man,语法:man[选项] 命令
常用选项:
1.-k 根据关键字搜索联机帮助
2.num 只在第num章节找
3.-a 将所有章节显示出来
手册分为8章,分别为以下八章:
1是普通的命令
2是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个 函数,需要加什么头文件)
3是库函数,如printf,fread
4是特殊文件,也就是/dev下的各种设备文件
5是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6是给游戏留的,由各个游戏自己定义
7是附件还有一些变量,比如向 environ这种全局变量在这里就有说明
8是系统管理用的命令,这些命令只能由root使用,如ifconfig
8.cp指令
语法:cp[选项]源文件或目录
功能:复制文件或目录
说明:cp指令用于复制文件或目录,如果同时指定两个以上的文件或目录,且最后的目的地是已经存在的目录,就会把前面的文件或目录复制过来,如果目的地不存在则会报错
常用选项:
1.-f 强制复制文件或目录,不论目的文件是否已经存在
2.-i 覆盖文件前询问用户
3.-r 将指定目录下的文件与子目录一并处理
9.mv指令(重要)
用来备份文件或者目录
语法:mv [选项] 源文件或目录 目标文件或目录
功能:1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至
目标目录中。
常用选项:
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
10. cat
语法:cat[选项][文件]
功能:查看文件的内容
常用选项:
1.-b 对非空输出行编号
2.-n 对输出的所有行编号
3.-s 不输出多行空行
11.more指令
语法:more[选项][文件]
功能:类似cat
常用选项:
1.-n 对输出的所有行编号
2.-q 退出more
12.less指令(重要)
语法:less[参数][文件]
功能:less与more类似,但使用less可以随意浏览文件,more仅能向前移动,而且less在查看之前不会加载整个文件。
选项:
1.-i 忽略搜索时的大小写
2.-N 显示每行的行号
3./字符串:向下搜索字符串
4.?字符串:向上搜索字符串的功能
5.n:重复前一个搜索
6.N:反向前一个搜索
7.q:quit
13.head指令
语法:head[参数][文件]
功能:head用来显示档案的开头至标准输出,默认文件的前十行
选项:
1.-n<行数> 显示的行数
14.tail指令
语法:tail[必要参数][选择参数][文件]
功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理,常用查看日志文件
选项:
1.-f 循环读取
2.-n<行数> 显示行数
15.cal指令
cal命令可以用来显示公历(日历)
命令格式:cal[参数][月份][年份]
功能:用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999) 如有两个参数,则表示月份和年份
常用选项:
-3 显示系统前一个月,当前月,下一个月的月历
-j 显示在当前年中的第几天
-y 显示当前年份的日历
16.find指令(重要)
语法:find pathname -options
功能:用于在文件树种查找文件,并作出相应的处理
常用选项:
-name 按照文件名查找文件
17.grep指令
语法:grep[选项]搜索字符串 文件
功能:在文件中搜索字符串,将找到的行打印出来
常用选项:
-i 忽略大小写的不同
-n 顺便输出行号
-v 显示出没有搜寻字符串内容的那一行
18. zip/unzip指令
语法 : zip 压缩文件.zip 目录或文件
功能:将目录或文件压缩成zip格式
常用选项:
-r 递归处理,将指定目录下的所有文件和子目录一并处理
例子:
将test2目录压缩: zip test2.zip test2/*
解压到tmp目录:unzip test2.zip /tmp
19.bc指令
bc命令可以很方便的进行交互式计算
加法:+
减法:-
乘法:*
除法:/ •
指数:^
余数:%
Ctrl +D可以退出bc状态
20.uname-r指令
语法:uname[选项]
功能:uname用来获取电脑和操作系统的相关信息
补充说明:uname可显示linux主机所用的操作系统的版本,硬件的名称等基本信息
常用选项:
-a或-all详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称
21.重要的几个热键[Tab],[ctrl]-c,[ctrl]-d
[Tab]按键--具有『命令补全』和『档案补齐』的功能
[Ctrl]-c按键--让当前的程序『停掉』
[Ctrl]-d按键--通常代表着:
22.关机
语法:shutdown[选项]
-h :将系统的服务停掉后,立刻关机
-r :在系统的服务停掉后重新启动
-t sec : -t后面加秒数,即过几秒关机
二.Linux权限的概念
Linux下有两种用户:超级用户(root),普通用户
超级用户:可以在linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
命令:su[用户名]
功能:切换用户
2.1 Linux权限管理
2.1.1 文件访问者的分类
文件和文件目录的所有者:u --user
文件和文件目录的所有者所在组的用户:g --Group
其他用户: o --Others
2.1.2 文件类型和访问权限
1.文件类型
d:文件夹
-:普通文件
l:软链接
b:块设备文件
p:管道文件
c:字符设备文件
s:套接口文件
2.基本权限
r(读):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
w(写):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
x(执行):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
3. 文件权限值的表示方法
1.
2.
4.文件访问权限的相关设置方法
1.chmod
功能:设备文件的访问权限
格式:chmod[参数] 权限 文件名
常用选项:R->递归修改文件目录的权限
(只有文件拥有者和root才可以改变用户的权限)
① 用户表示符+/-=权限字符
1.+:向权限范围增加权限代号所表示的权限
2.-:向权限范围取消权限代号所表示的权限
3.=:向权限范围赋予权限代号所表示的权限
4.用户符号:
u:拥有者
g:拥有者同组
o:其他用户
a:所有用户
实例:
# chmod u+w /home/abc.txt# chmod o-x /home/abc.txt
②三位8进制数字
实例:
# chmod 664 /home/abc.txt# chmod 640 /home/abc.txt
2.chown
功能:修改文件的拥有者
格式:chown[参数] 用户名 文件名
常用选项:递归修改文件的拥有者
3.chgrp
功能:修改文件或目录的所属组
格式:chgrp[参数]用户组名 文件名
常用选项: -R 递归修改文件或目录的所属组
4.umask
功能:查看或修改文件掩码
创建文件或目录的时候还要受到umask的影响,假设默认权限是mask,则实际创建出来的文件权限是:mask & -umask
格式:umask权限值
说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限,超级用户默认掩码值为0022,普通用户默认为0002
#umask 查看
#umask 044 设置
2.1.3 file指令
功能说明:辨别文件类型
语法:file[选项] 文件或目录
常用选项:
-c 详细显示指令执行的过程
-z 尝试解读压缩文件的内容
使用sudo分配权限
sudo可以用来调用授权的命令
sudo -u 用户名 命令