Linux基础篇(二)--Linux常用命令
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次出现的位置
相关文章