Linux指令
linux指令格式
Linux的大部分指令格式都是:
指令名称
选项
路径(可无)
以上只是linux种大部分的命令格式,但并不是所有的命令都是这个格式。
linux的常用命令
ls (list)
语法: ls [选项][目录]
功能: 当[目录]为一个目录文件的时候作用为显示目录里的文件和目录,当[目录]为一个文件的时候作用为文件的时候作用为显示文件名以及其他信息
选项:
- -a 列出目录里面的所有内容(包括隐藏文件以及
.
(代表当前目录下面会将)和..
(代表上一级目录))- -d 将目录像文件一样显示
- -l 将当前目录的所有文件以详细信息的方式显示(从左到右每列的属性一次为
文件类型
,权限
,硬链接数
,文件拥有者用户
,文件拥有者用户组
,文件大小
,文件最后一次被修改的时间
,文件名
)- -R 以递归的方式列出目录下的所有文件(也就是将目录所包含的目录内的所有文件显示出来)
- -t 对列出来的文件按最后一次修改的时间进行排序
- -k 对列出来的文件大小以kB为单位显示
以上为ls常用的选项,但其实ls的选项有很多,他的功能是非常强大的,关于ls的更多选项,我以后再慢慢添加吧!
pwd (print work directory)
语法: pwd
功能: 查看当前工作目录的绝对路径
cd(change directory)
语法: cd [目录路径]
功能: 改变当前工作目录
参数说明:
- 目录路径可以为绝对路径。例如:cd /etc/
- 目录路径也可以为相对于当前路径的基本路径(..(上一级目录), ~(家目录))
- 如果不跟参数可直接进入当前用户的家目录
- 返回最近一次进入的目录
touch
语法: touch [选项][文件名]
功能: 创建文件或修改文件的最近一次修改时间
选项:
- -a 更改存取时间
- -m 更改文件修改时间
mkdir(make directory)
语法: mkdir [选项][目录名]
功能: 创建目录
选项:
- -p 此选项后面可以跟一个路径,路径中不存在的目录,他会自己创建
rm(remove)
语法: rm [选项] [文件或目录路径]
功能:删除文件或者目录
选项:
- -r 此选项主要是删除目录,代表删除目录以及目录里面的所有内容(递归删除)
- -f 此选项代表删除的时候不用再次确定删除
- -i 删除的时候遇到文件就逐一确认
cp(copy)
语法: cp [选项][源路径][目标路径]
功能: 将一个文件或者目录复制到另一个位置(复制文件的时候允许目标文件名和原文件名不同)
选项: 当复制的对象为目录的时候需要加上-r
选项,代表将目录里的内容,递归的复制
mv(move)
语法: mv [选项][源路径][目标路径]
功能: 文件或者目录的移动
cat
语法: cat [选项][文件名]
功能: 查看文本文件内容
选项:
- -n对输出的行进行编号
more/less
语法: more [文件名]
less [文件名]
功能: 查看文本文件,不过与cat不同的是进行分页显示(more可以一页一页的翻, less可以一行一行的翻)
打开文件后可以使用命令(/str(全文匹配str)q(退出))
经常和管道搭配使用(后面会介绍)
date
语法: date [选项] [format]
功能: 显示或设置当前时间
选项:
- -s设置当前时间(只有root用户才可以)(例如:date -s “20180119 11.36.00”)
查看时间可以按照指定的格式来查看 (例如:date +%Y-%m-%d\ %H:%M:%S 按照 年-月-日 时:分:秒 来查看(注意空格需要转义))
format:
- %H:小时
- %M:分钟
- %S:秒钟
- %X:相当于%H:%M%S
- %d:日
- %m:月
- %y:年(只是后两位)
- %Y:完整的年份
- %F:相当于%Y-%m-%d
- %s:以时间戳的方式显示
时间戳:从1970年1月1日到现在所经过的秒数(不算闰秒)
cal
语法: cal [选项] [月][日]
功能: 查看日历
选项:
- -3 显示上个月,本月,下个月的日历
- -y 2018 显示2018年所有月份的日历
grep
语法: grep [选项][字符串]
功能:在文件中搜索字符串,将找到的目标所在行打印出来
选项:
- -n顺便输出行号
- -v反向匹配
- -i忽略大小写
经常和管道搭配使用(后面会介绍)
zip/unzip
语法: zip [目标路径] [源路径]
举例: zip ../test.zip test (将test目录压缩放在上一层目录里面)unzip test.zip -d ../(将test.zip解压到上层目录)
tar
语法: tar [选项][文件路径]
功能:仅从对文件或者目录的打包,解包
选项:
- -c 打包
- -x 解包
- -z 同时查看是否拥有gzip属性,如果有的话,那么如果是打包操作就顺便进行压缩,如果是解包就顺便进行解压
- -j是否具有bzip2属性,同上
- -v 显示过程
- -f指定打包解包的目标名字
shutdown
语法: shutdown [选项][参数]
选项:
- -t3 3秒之后关机
- -r 重启
Linux的实用命令
du
语法: du[选项][参数]
功能: 查看文件所占的磁盘块的数量
常用选项:
- -h 为每个数附加一个表示大小单位的字母,例如用M表示二进制的兆字节。
参数:参数一般位文件或者目录的路径
说明: 我们都是知道,ls -l里面可以查看文件的大小,但是有时从ls -l里面显示的命令并不是真正的文件大小,比如一个文件在它的第10000字节位上写一个字母,用ls -l查看的结果会显示你的文件时9.8k字节,但是真正意义上我们的文件中只有一个字母,所以为了查看文件到底占的磁盘空间,我们可用du来查看,du命令主要时查看磁盘存储这个文件的时候所使用的磁盘块,磁盘块一般时4K位增量,所以查看的磁盘块的个数一般都是4的倍数,经过实测du查出来的文件只占4个磁盘块,如果只是将文件读写指针从头向后移动10000个字节,那么du查出来的结果将会时0。
df
语法: df[选项][参数]
功能:报告文件系统磁盘空间的使用情况
常用选项:
- -h 为每个数附加一个表示大小单位的字母,例如用M表示二进制的兆字节。
参数:参数一般位文件或者目录的路径
说明:此命令一般用来查看linux系统中个硬盘的使用情况,后面如果跟文件或者目录的时候,只会显示文件或者目录所在的磁盘分区的使用情况。
top
语法: top
功能:动态的查看进程资源的状态
说明:此命令大多用来查看操作系统的进程资源使用情况,时动态显示的,和windows的任务管理器差不多,在打开的页面还可以使用命令例如:按K可以向一个进程发送一个信号如果发送的信号位KILL则是将这个信号杀死
free
语法: free [选项]
功能:查看系统中内存使用情况
选项:
- -h 为每个数附加一个表示大小单位的字母,例如用M表示二进制的兆字节。
说明:此命令是用来查看操作系统的内存使用情况,包括
已用和未用的
,物理内存和交换内存
,共享内存
,内核使用的
,缓冲区
。
su
**语法:**su [参数]
功能:切换用户
参数:
- -用户名 或者 用户名
说明: 后面的参数为
-用户名
的时候,会将整个环境切换到此用户的环境,如果参数只是用户名
此时可以认为只是将用户的身份换位此用户。如果不跟参数代表切换到root用户。
sudo
语法: sudo [选项][参数]
功能:使用另一个用户的权限进行一次操作
选项:
- -b 在后台执行指令
- -H 将HOME环境变量设为新身份的HOME环境变量
- -k 结束木马的有效期限,也就是下次再执行sudo的时候需要输入密码
- -l 列出目前用户可执行与不可执行的指令
- -u 以新的用户作为新身份
参数: 参数可有可无,有的话一般是用户名。
说明: 命令一把用于需要其他用户的身份来执行的操作,例如安装一个gcc编译器,如果当前用户是普通用户,那么是没有这个权限的,但是只是这一个命令需要用root用户,那么我们就不需要用su来切换用户,只需要再操作的前面加上sudo
即可,如果一些特殊的操作需要其他用户的身份,我们可以使用sudo -u 用户名 操作
来实现其他身份的操作。sudo在第一次执行其他用户的操作时是需要输入当前用户密码的,输入密码后在5分总内再次使用时将不用输入密码。当然并不是用了sudo命令,就可以用此用户的任何操作,可以使用-l
选项来查看那些可操作,那些不可操作。
adduser
语法: adduser[选项][参数]
功能:添加用户或者更新默认新用户的信息
选项:
- -d 为创建的用户指定家目录
- -D 更改当前用户的默认值
- -g 指定新建用户的用户组
参数:一般为新建的用户的用户名,更改默认属性时不需要参数。
说明:adduser
和useradd
两个命令其实是一个命令,为了添加用户,不同的选项有不同的功能,更改默认值的-D
选项不常用。
passwd
语法: passwd [参数]
功能: 更改当前用户或者其他用户的密码
参数: 有参数时,参数为其他用户的用户名,没有参数代表更改自己的密码
userdel
语法: userdel [选项][参数]
功能: 删除一个用户
选项:
- -f 强制删除用户,即使用户在登陆状态也可以将它删除
- -r 同时删除用户主目录,用户邮箱。
说明: 删除用户的时候,并不会将用户的主目录删除,所以一般加上
-r
选项,删除用户并不会删除用户创建的文件以及文件夹。
说明
其实linux中大多数的命令后面加上 --help
可以显示出帮助信息,关于此命令怎么用。大多数的命令都可以通过man手册来查看使用方法以及命令的作用。