Linux基础篇(二)--Linux常用命令

2020-07-08 00:00:00 执行 命令 文件 目录 源文件

Linux命令的执行需要依赖于Shell命令解释器。Shell实际上是在Linux系统中运行的一种特殊程序,Shell直译过来就是壳的意思,它位于操作系统内核之上,负责接受用户输入的命令并进行解释,将需要执行的操作传递给系统内核执行,Shell在用户和内核之间充当了一个“翻译官”的角色。当用户登陆到Linux系统时,会自动加载一个Shell程序,以便给用户提供可以输入命令的操作环境。

Linux发展过程中出现了多种Shell程序,Bash就是其中一种比较好用的Shell程序,它有一个很好用的功能,通常输入命令时你不必把命令输全,Shell 就能判断出你所要输入的命令,并显示出来,按住Tab键就能补全。文件位于/bin/bash,它根据Linux命令与Shell程序的关系,一般分为以下两种类型:

内部命令:指的是集成于Shell解释器程序(如Bash)内部的一些特殊指令,也成为内建(Built-IN)指令。内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无需从硬盘中重新读取文件,因此执行效率更高。

外部命令:指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是属于Shell解释器程序之外的命令,所以称为外部命令。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。

Linux系统默认会将存放外部命令、程序的目录(如/bin、/usr/bin、/usr/local/bin等)添加到用户的“搜索路径”中,当使用位于这些目录中的外部命令时,用户不需要指定具体的位置。因此在大多数情况下,不用刻意去分辨内部、外部命令,其使用方法是基本类似的。

下面介绍几种比较常用的命令。

一、基本系统命令

1、命令提示符

root@localhost~$

root表示当前登录用户;localhost表示主机名;~表示当前所在目录;$表示普通用户;#表示超级用户


2、man 帮助命令

man 命令

用来获取指定命令的帮助,或者用 命令 --help 也可以


3、shutdown/halt/poweroff/init 0 关机命令

shutdown [选项] 时间

常用选项:

-c 取消前一个关机命令

-h 关机

-r 重启,还有reboot/init 6


4、alias 命令别名

查看系统中的所有命令别名

alias 别名= ‘原命令’

设定命令别名


5、history 历史命令

history [选项] [历史命令保存命令]

常用选项:

-c 清空历史命令

-w 把缓存中的历史命令写入历史命令保存文件~/.bash-history

(1)使用上下箭头调用以前的历史命令

(2)使用!n重复执行第n条历史命令

(3)使用!!重复执行上一条命令


6、常用快捷键

ctrl + c 强制终止当前命令

ctrl + l 清屏

ctrl + a 光标移动到命令行首

ctrl + e 光标移动到命令行尾

ctrl + u 从光标所在位置删除到行首


7、管道符

(1)多命令顺序执行

命令1;命令2 多个命令顺序执行,命令之间没有逻辑关系

命令1 && 命令2 逻辑与,如果1能执行那么2也能执行,如果1不能执行,那么2也不能执行

命令1 || 命令2 逻辑或,如果1不能执行,那么2执行,如果1执行,那么2不会执行

(2)命令1 | 命令2

把命令1的正确输出作为命令2的操作对象


8、通配符

* 匹配任意内容

? 匹配任意一个字符

[] 匹配任意一个中括号内的字符,例如[abc]代表一定匹配一个字符,要么是a,要么是b,要么是c

[ - ] 匹配中括号中的任一个字符,“-”代表一个范围,例如[a-z]代表匹配一个小写字符


9、ps 显示进程信息

ps -ux 显示当前用户的进程

ps -uxwww 显示当前用户的进程的详细信息

ps -aux 显示所有用户的进程

ps -ef 显示系统所有进程信息


10、top 查看系统cpu、内存等使用情况


二、文件、目录操作命令

1、ls --查询目录内容

ls [选项] [目录或者文件]

常用选项有:

-a 显示所有文件,包含隐藏文件

-l 显示详细信息

-d 查看目录属性

-h 人性化显示文件大小

-i 显示inode


2、文件、目录权限

例如 -rwxrw-r--

可以把它分为四段:[-][rwx][rw-][r--]

[-]:"-"表示文件,"d"表示目录

[rwx]:拥有者的权限,r可读,w可写,x可执行

[rw-]:同组其他人的权限,可读可写不可执行

[r--]:其他使用者的权限,只可读不可写不可执行

也可以用十进制或者二进制来表示读写执行权限:r-4(100B),w-2(010B),x-1(001B)

用chmod命令可以对目录或者文件给予权限,eg:chmod 764 xxx


3、mkdir/rmdir 建立目录/删除目录

mkdir是make directories的缩写,rmdir是remove empty directories的缩写

mkdir [目录名]

rmdir [目录名]


4、cd 切换目录

cd [目录]

cd ~表示进入当前用户的家目录

cd .. 进入上一级目录

cd - 进入上次目录


5、pwd 查询所在目录位置 print working directory


6、rm 删除文件或者目录

rm [选项] [文件或者目录]

常用选项:

-r 删除目录

-f 强制删除


7、cp 复制

cp [选项] [源文件或目录] [目标目录]

常用选项:

-r 复制目录

-p 连带文件属性复制

-d 若源文件是链接文件,则复制链接属性

-a 相当于-pdr


8、mv 剪切或改名

mv 文件名1 文件名2 将文件名1改为文件名2

mv 文件名 目录名 将文件剪切到目录中

mv 目录名1 目录名2 若目录名2存在,则将目录1剪切到目录2;若不存在,则将目录1改名为目录名2


9、locate/find 文件搜索命令

locate 文件名

find [搜索范围] [搜索条件]

find命令的用法很多,这里只介绍常用的几种

eg:find /kernel -iname install.log

-iname表示不区分大小写,如果需要匹配搜索内容,可以使用通配符

eg:find / -iname "install*"

find . -iname "ab[ad]"


10、whereis/which 文件搜索命令

whereis 文件

搜索文件所在路径及帮助文档所在位置,默认只会在指定目录查找(/bin ,/etc ,/usr)

-b: 只查找二进制文件

-u: 查找不包含指定类型的文件

-B<目录>: 只在指定目录下查找二进制文件

-M<目录>:只在指定目录查找帮助文件

-S<目录>:只在指定目录查找源码目录

which 文件

which命令只会在PATH环境变量定义的路径及命令别名中查找,所以范围有限


11、grep 字符串搜索命令

grep [选项] 字符串

常用选项:

-i 忽略大小写

-n 显示字符串在文件中行号

-r 递归搜索子目录


12、ln 链接命令

ln -s [源文件] [目标文件]

生成链接文件,源文件一定要写路径

路径:从根目录下开始指定,一级一级递归查找

相对路径:参照当前所在目录,进行查找

硬链接特征:

(1)拥有相同的inode和存储block块,可以看作是同一个文件

(2)可以通过inode识别,但不能跨分区,不能针对目录使用

软链接特征:

(1)类似于Windows的快捷方式,拥有自己的inode和存储block块,但是数据中只保存了源文件的文件名和inode,并没有实际的文件数据

(2)删除了源文件,软链接将不能使用


13、压缩和解压缩命令

常用的压缩格式有:.zip/.gz/.bz2/.tar.gz/.tar.bz2

(1).zip格式压缩

zip 压缩文件名 源文件 #压缩文件

zip -r 压缩文件名 源目录 #压缩目录

unzip 压缩文件 #解压缩

(2).gz格式压缩

gzip 源文件 #压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件 #压缩文件,源文件会保留

gzip -r 目录 #压缩目录下的所有子文件,但不能压缩目录

gzip -d 压缩文件/gunzip 压缩文件 #解压缩

gunzip -r 目录 #解压缩目录下的所有子文件

(3).bz2格式压缩

bzip2 -d 源文件 #压缩文件

bunzip2 压缩文件 #解压缩

(4)tar打包

tar [选项] 打包文件名 源文件

常用选项:

-c 打包

-v 显示过程

-f 指定打包后的文件名

tar -xvf 打包文件名 #解打包

(5).tar.gz和.tar.bz2都是先打包为.tar格式,再压缩


三、查看文件内容命令

1、touch 改变文件或目录的访问时间和修改时间

touch [选项] [-t<日期时间>] [目录或文件]

选项:

-a 只修改访问时间

-m 只修改时间

-t 使用指定日期时间,而非系统时间

如果指定目录文件不存在,则会直接创建一个空文件,所以touch也常用来创建一个空白文件


2、file 用于识别文件的类型

file [选项] 文件或目录

选项:

文件或目录 需要识别的文件或目录

-b 显示识别结果时,不显示文件名

-c 显示执行过程

-L 直接显示符号链接文件指向的文件类型

-z 尝试去解读压缩文件的内容


3、cat 显示文件的内容


4、vi/vim 打开并编辑文件

底行模式中的常用命令

:w 保存

:q 退出

:! 强制执行

:n 切换到后一个

:N 切换到前一个

:ls 列出当前编辑器中打开的所有文件

:15 光标快速定位到第15行

/xxx 光标从当前文职向后搜索到xxx次出现的位置

相关文章