目录结构
一、文件处理命令
1. Linux命令格式
2. Linux目录处理命令
1)建立目录:mkdir
2)切换所在目录:cd
3)查询所在目录位置:pwd
4)删除空目录:rmdir
5)删除文件or目录:rm
6)复制命令:cp
7)剪切/改名:mv
3. Linux中常见目录的作用
4. Linux链接命令
1)硬链接
2)软链接
二、文件搜索命令
1. 以命令搜索文件:locate
2. 以命令搜索系统命令:whereis / which / whatis / whoami
1)whereis
2)which
3)whtatis / whoami
4)PATH环境变量
3. 文件搜索:find
1)find常规搜索格式
2)不同搜索条件的find命令组合
4. 搜索文件中的字符串:grep
三、Linux帮助命令
1. 帮助命令:man
1)获取指定命令的帮助信息
2)查看命令拥有的帮助级别
3)查看和命令相关的所有帮助
2. 帮助命令:选项帮助
3. shell内部命令帮助:help
4. 详细命令帮助:info
四、压缩命令
1. 压缩格式:.zip(zip命令)
2. 压缩格式:.gz(gzip命令)
3. 压缩格式:.bz2(bzip2命令)
4. tar命令打包&解包
5. 压缩格式:.tar.gz
6. 压缩格式:.tar.bz2
五、关机&重启命令
1. shutdown命令
2. 其他关机命令
3. 其他重启命令
4. 系统运行级别
5. 正确退出登录:logout
一、文件处理命令
1. Linux命令格式
1)符号说明
[root@localhost ~]#
[test001@localhost ~]$
root/test001
:当前登录的用户
localhost
:当前主机名
~
:当前登录用户所在目录(家目录)
#
:超级用户的提示符
$
:普通用户的提示符
家目录查看:pwd
命令查看
超级用户:/root
普通用户:/home/test001
2)命令格式
命令 [选项] [参数]
若有多个选项,则可写在一起
简化选项与完整选项:-a
等效于 --all
查询目录中的内容:ls
==> list
ls [选项] [文件/目录]
选项:
-a 显示所有文件(包括隐藏文件<.开头>,即系统文件)
-l 显示详细信息(文件类型、权限、引用计数、所有者、所属组、大小)
-d 查看目录属性(当前所在目录)
-h 人性化显示文件大小(直观可识别的大小)
-i 显示inode(索引节点,根据节点id查询文件所在位置)
常用组合:ls -a,ls -la,ls -lh,ls -ld,ls -l(ll)...
r==>读 w==>写 x==>执行
权限(第1列) | 含义 | 说明 |
---|---|---|
1位 | 文件类型 | - :文件d :目录l :软链接(快捷方式) |
2-4位 | 所有者(u ) |
文件所有者可对文件的操作权限 |
5-7位 | 所属组(g ) |
文件所属组可对文件的操作权限 |
8-10位 | 其他人(o ) |
其他用户可对文件的操作权限 |
2. Linux目录处理命令
1)建立目录:mkdir
==> make directory
mkdir [-p] [目录名]
-p:递归创建(先创建上级目录,再创建下级目录...;即创建一连串的目录)
如:mkdir -p 001/002
PS:若是创建文件,则命令为 touch <文件名>
2)切换所在目录:cd
==> change directory
cd [目录]
简化操作:
cd ~ 回到当前用户的家目录
cd 回到当前用户的家目录
cd - 进入上次的目录
cd .. 进入上一级目录
cd . 进入当前目录(相当于目录不变化)
【1】相对路径:参照当前所在目录,进行查找
如:cd ../usr/local/src
【2】绝对路径:从根目录开始指定,逐级递归查找(在任何目录下都能进入指定位置)
如:cd /etc/sysconfig/network-scripts/
3)查询所在目录位置:pwd
==> print working directory
4)删除空目录:rmdir
remove empty directory(PS:不常用该命令)
rmdir [目录]
5)删除文件or目录:rm
==> remove
rm -rf [文件/目录]
选项:
-r 删除目录
-f 强制
6)复制命令:cp
==> copy
cp [选项] [源文件/目录] [目标目录]
选项:
-r 复制目录
-p 连带文件属性一起复制
-d 复制链接的属性(源文件是链接文件时)
-a 相当于 -pdr(源文件和目标文件的所有属性完全一致)
7)剪切/改名:mv
==> move
# 源文件与目标文件不在同一目录(剪切);不需要加-r
mv [源文件/目录] [目标目录]
# 源文件与目标文件在同一目录(改名)
mv 原文件名 被修改名
3. Linux中常见目录的作用
目录 | 作用 |
---|---|
/ |
根目录 |
/bin |
系统命令保存目录(普通用户、超级用户可读取) |
/sbin |
系统命令保存目录(只有超级用户可读取) |
/boot |
启动目录,启动相关文件 |
/dev |
设备文件保存目录 |
/etc |
配置文件保存目录 |
/root |
超级用户的家目录 |
/home |
普通用户的家目录 |
/lib |
系统库保存目录(常用功能写成的程序保存在lib函数库) |
/mnt |
系统挂载目录(如:移动硬盘) |
/media |
挂载目录(如:光盘) |
/tmp |
临时目录 |
/proc |
保存内存的过载点(内存的盘符),是直接写入内存的,不能直接操作 |
/sys |
保存内存的过载点(内存的盘符),是直接写入内存的,不能直接操作 |
/usr |
系统软件资源目录(类似Windows中的C:/Windows/) |
/usr/local |
安装第三方软件的目录(类似C:/Progrem Files/) |
/opt |
也可用于安全第三方软件的目录(类似D:/Software) |
/usr/bin |
系统命令(普通用户) |
/usr/sbin |
系统命令(超级用户) |
/var |
系统相关文档内容 |
4. Linux链接命令
链接命令:ln
==> link
1)硬链接
ln [源文件] [目标文件]
同一存储分区位置同一个程序文件,创建了多个硬链接文件(平级),拥有相同的i节点编号、block块,数据块中保存有源文件的文件名、i节点编号、实际的文件数据,这些硬链接都指向该程序文件。
①修改任一硬链接文件的其中的内容,其他的相应硬链接的内容也同步变化
②删除or改名其中的任一硬链接文件,其他平级的硬链接文件并不会受影响
③通过i节点编号,可识别判断平级的不同硬链接文件(拥有相同的i节点)
④不能跨分区、不能针对目录使用
如:ln AAA/001.txt BBB/001_hard.txt
2)软链接
ln -s [源文件] [目标文件]
类似快捷方式,软链接拥有属于自己不同的i节点、Block块,但其数据块中只保存有源文件的文件名、i节点编号,并没有实际的文件数据。
①软链接文件权限都为:rwxrwxrwx(实际权限由源文件权限决定)
②修改任一软链接文件,其他的对应的软链接文件都会改变
③若删除源文件,则软链接就不能使用
④若创建软链接,则需要写绝对路径,否则可能跨目录操作会报错,创建软链接后所指向的源文件会出现红色背景的标识(硬链接无此限制)
二、文件搜索命令
1. 以命令搜索文件:locate
# 强制更新数据库(路径:/var/lib/mlocate,不同系统可能略有不同)
updatedb
# 在后台数据库中按文件名搜索(耗费资源少,搜索速度较快)
locate 文件名
locate命令搜索所用数据库路径为:/var/lib/mlocate
locate搜索遵循的约束规则文件为:/etc/updatedb.conf
配置文件
# 开启搜索限制:yes表示遵循以下配置项的规则,no表示不受限制
PRUNE_BIND_MOUNTS = "yes"
# 不搜索的文件系统
PRUNEFS =
# 不搜索的文件类型
PRUNENAMES =
# 不搜索的路径/目录
PRUNEPATHS =
2. 以命令搜索系统命令:whereis / which / whatis / whoami
1)whereis
# 搜索命令所在的路径&帮助文档位置
whereis 命令名
选项:
-b 只查找可执行文件
-m 只查找帮助文档
2)which
# 搜索命令所在的路径&别名(若有)
which 命令名
3)whtatis / whoami
# 所查找命令的功能介绍
whatis 命令名
# 查看当前用户
whomai
4)PATH环境变量
PATH环境变量:定义的是系统搜索命令的路径,当执行命令时,会在PATH路径中查找“命令”是否存在;若是自定义的路径没有添加到PATH路径中,则需要以绝对路径执行
echo $PATH
3. 文件搜索:find
1)find常规搜索格式
# 在约定氛围和条件下搜索文件
find [搜索范围] [搜索条件]
PS:
①避免大范围搜索,因其极其耗费系统资源
②find在系统中搜索符合条件的文件名,依从完全匹配的方式;若需要模糊匹配,则需要联合通配符使用
③在生产环境,资源占用限制要求高的情况下,尽量不要直接在根目录范围下用find搜索(会较大增加资源占用)
如:find / -name install.log
Linux中的通配符:
符号 | 含义 |
---|---|
* |
匹配任意内容 |
? |
匹配任意一个字符 |
[] |
匹配中括号[]内的任意一个字符 |
如查找以c或d字符结尾的文件名:find /tmp/test007 -name "*[cd]"
2)不同搜索条件的find命令组合
【1】按名字搜索
# 区分大小写搜索文件
find /root -name install.log
# 不区分大小写搜索人家
find /root -iname INSTALL.log
【2】按所有者搜索
# 按照所有者搜索
find /root -user root
# 查找没有所有者的文件
find /root -nouser
nouser的可能场景:
①内核产生:/sys、/proc 目录下的系统内核文件,可能出现部分没有所有者的文件(不能删除)
②外来文件:从光盘、移动硬盘拷贝产生没有所有者的文件(可删除)
【3】按修改时间搜索
# 查找某个时间范围修改的文件
find /var/log -mtime +10
选项取值:
-10 10d以内修改的文件
10 10d当天修改的文件
+10 10d以前修改的文件
--------------------------
atime 文件访问的时间
ctime 改变文件属性的时间
mtime 修改文件内容的时间
# 搜索60min以内修改过的文件
find /var/log -mmin -60
【4】按文件大小or大小范围搜索
find . -size +25k
选项取值:
-25k <25KB的文件
25k =25KB的文件
+25 >25KB的文件
PS:命令中的千字节单位k是小写,兆字节单位M是大写
# 在指定目录下查找约定文件大小范围内的文件,如:(20k,23k)
find /etc -size +20k -a -size -23k
选项:
-a 逻辑与(and)
-o 逻辑或(or)
# 在指定目录下查找约定文件大小范围内的文件,并显示详细信息
# 对命令1搜索出的结果,用命令2进行执行相关操作
find /etc -size +20k -a -size 23k -exec ls -lh {} \;
【5】按i节点编号搜索
# 查找i节点为指定编号的文件
find . -inum 130833
# 根据i节点编号查询出对应的文件,然后执行删除该文件的操作
find . -inum 919188 -exec rm -rf {} \;
4. 搜索文件中的字符串:grep
# 在文件中匹配符合条件的字符串(搜索文件中存在指定字符串的行)
grep [选项] 字符串 文件名
选项:
-i 忽略大小写
-v 排除指定字符串(不包含指定字符串)
-E 搜索多个字符串中的任意一个
搜索多个字符串中的任意一个:
# 方式1:
grep -E "字串1|字串2|字串3|..." 文件名
# 方式2:
egrep "字串1|字串2|字串3|..." 文件名
如:grep "DEVICE" /etc/sysconfig/network-scripts/ifcfg-eth0
find与grep区别:
- find命令:在系统中搜索符合条件的文件名,采用完全匹配方式;联合通配符可进行模糊匹配
- grep命令:在文件中搜索符合条件的字符串,采用模糊匹配方式;可联合正则表达式匹配,依循包含匹配
三、Linux帮助命令
1. 帮助命令:man
==> manual
1)获取指定命令的帮助信息
man 命令名
如:man man、man ls
man的级别
1:查看命令的帮助
2:查看可被内核调用的函数的帮助
3:查看函数和函数库的帮助
4:查看特殊文件的帮助(主要是/dev目录下的文件)
5:查看配置文件的帮助
6:查看游戏的帮助
7:查看其它杂项的帮助
8:查看系统管理员可用命令的帮助
9:查看和内核相关文件的帮助
2)查看命令拥有的帮助级别
man -f 命令名
效果同:whatis 命令名
以下3种方式都可查看某个命令拥有的帮助等级:
查看具体某个等级的帮助说明,如:man 5 passwd
3)查看和命令相关的所有帮助
# 查询包含指定命令名作为关键词的所有命令or配置文件的帮助信息
man -k 命令名
效果同:apropos 命令名
如:apropos passwd
2. 帮助命令:选项帮助
# 获取命令选项的帮助(命令的选项用法)
命令名 --help
如:ls --help
3. shell内部命令帮助:help
shell:用户和计算机交互的接口。用户输入的命令通过shell翻译成计算机可识别的二进制形式,然后传入计算机内核识别后即可执行对应操作
# 获取shell内部命令的帮助
help shell内核命令
操作方法:
①确定是否是shell内核命令:whereis 命令名
②获取内核命令帮助:help 命令名
PS:shell内核命令,是系统自带的命令,非后来添加的命令
4. 详细命令帮助:info
info 命令名
操作键说明:
Enter
:进入自帮助页面(带有*号标记)
u
:进入上层页面
n
:进入下一个帮助小节
p
:进入上一个帮助小节
q
:退出
四、压缩命令
常见的压缩格式:.zip
、.gz
、.bz2
、.tar.gz
、.tar.bz2
1. 压缩格式:.zip
(zip命令)
zip压缩:
# 压缩文件
zip 压缩文件名 源文件
# 压缩目录
zip -r 压缩文件名 源目录
PS:压缩目录时,若不加-r,则只会压缩第一级目录,其下的子目录or子文件都不会被压缩
zip解压:
# 解压.zip文件
unzip 压缩文件
2. 压缩格式:.gz
(gzip命令)
压缩.gz:
# 压缩为.gz格式的压缩文件(源文件会消失)
gzip 源文件
# 压缩为.gz格式的压缩文件(源文件保留)
gzip -c 源文件 > 压缩文件
# 单独压缩目录下每个子文件(此时并没有压缩目录)
gzip -r 目录
解压.gz:
# 解压文件-方式1
gzip -d 压缩文件
# 解压文件-方式2
gunzip 压缩文件
3. 压缩格式:.bz2
(bzip2命令)
压缩.bz2:
# 压缩为.bz2格式(不保留源文件)
bzip2 源文件
# 压缩为.bz2格式(保留源文件)
bzip2 -k 源文件
PS:bzip2命令不能压缩目录
解压.bz2:
# 解压方式1,-k可保留压缩文件
bzip2 -d 压缩文件
bzip2 -d -k 压缩文件
# 解压方式2,-k可保留压缩文件
bunzip2 压缩文件
bunzip2 -k 压缩文件
4. tar命令打包&解包
tar打包命令:
由上可知,zip可压缩文件、压缩目录,gzip可压缩文件、压缩目录中的子文件,bzip2只可压缩文件、不可压缩目录。对于gzip和bzip2命令,为了更便捷的使用来压缩目录,引入了两种式:
.tar.gz
、.tar.bz2
。先将目录打包成tar文件包(非压缩文件),再将其压缩为.gz或.bz2格式即可。
tar -cvf 打包文件名 源文件
选项:
-c 打包
-v 显示过程
-f 指定打包后的文件名
如:
tar -cvf 001.tar 001
gzip 001.tar
tar解包命令:
tar -xvf 包文件名
选项:
-x 解包
如:tar -xvf 001.tar
5. 压缩格式:.tar.gz
.tar.gz格式是先打包为.tar格式,再压缩为.gz格式,使用-z即可实现tar命令压缩为.tar.gz格式
# 打包的同时进行压缩
tar -zcvf 压缩包名.tar.gz 源文件
选项:
-z 压缩为 .tar.gz格式
# 将多个源文件压缩为一个压缩文件
tar -zcvf 压缩包名.tar.gz 源文件1 源文件2 源文件3
# 将压缩后的文件放到指定路径下
tar -zcvf 压缩包名.tar.gz -C 源文件(指定路径)
# 解压
tar -zxvf 压缩包名.tar.gz
选项:
-x 解压缩 .tar.gz格式
# 只查看压缩包的内容,但不作解压
tar -ztvf 压缩包名.tar.gz
选项:
-t 查看压缩包内容,不解压
6. 压缩格式:.tar.bz2
# 压缩
tar -jcvf 压缩包名.tar.bz2 源文件
选项:
-j 压缩为 .tar.bz2格式
# 解压
tar -jxvf 压缩包名 .tar.bz2
选项:
-x 解压缩 .tar.bz2格式
五、关机&重启命令
1. shutdown命令
shutdown [选项] 时间
选项:
-c 取消前一个关机命令
-h 关机
-r 重启
如:
shutdown -r now
shutdown -h xx:xx
shutdown -c
2. 其他关机命令
halt
poweroff
init 0
PS:以上3个关机命令,可能不会正确的保存服务器的配置,因此建议关机命令使用 shutdown
3. 其他重启命令
reboot
init 6
4. 系统运行级别
运行级别 | 含义 |
---|---|
0 | 关机 |
1 | 单用户 |
2 | 不完全多用户,不含NFS(网络文件系统)服务 |
3 | 完全多用户 |
4 | 未分配 |
5 | 图形界面 |
6 | 重启 |
# 查看运行等级
cat /etc/inittab
# 查看当前运行等级
runlevel
id:5:initdefault ==> 开机默认图形界面
id:3:initdefault ==> 开机默认字符界面
PS:id不能设置为0或6,否则会出现开机异常
5. 正确退出登录:logout
如:使用xshell客户端,退出时连接时建议用logout,不建议直接关闭客户端窗口(当多用户连接使用时,可能引起关闭前对应用户占用服务卡起来,影响正常连接用户数的限制)