前言
本文主要内容是Linux常用命令
1 目录管理
1.1 常用目录
/:整个系统的根目录,是整个系统目录树的起点
/home:包含用户的文件,包括参数设置文件、个性化文件、文档、数据、EMAIL、缓存数据等。
/mnt:软盘、光盘、优盘等外设的预设挂载点。
/tmp:临时文件。该目录一般会定期被系统自动清理干净。
/opt:可选的应用程序,一般是自己装的软件文件,比如tomcat、Apache等可以放在这个目录下。
1.2 快捷操作
上下键可查找以前输入的命令
tap键 # 可自动补全
. # 代表本层目录
.. # 代表上级目录
cd # 改变目录
cd ~ # 切换到当前用户主目录
cd / # 进入根目录
pwd # 显示当前路径
ls # 查看目录内容 -a 显示所有文件
1.3 常用命令
1.3.1 mkdir
mkdir 文件名 # 创建一个目录(创建文件夹)
常用参数:
mkdir -p demo/test # 如果父目录不存在,则自动创建父目录,方便创建多级目录
1.3.2 mv
mv 重命名目录、文件、文件剪切
常用参数:
mv demo demo1 把demo重命名为demo1
mv demo 路径 进行剪切
注:如果demo1不存在就是更名,如果存在就是剪切到demo1内
1.3.3 cp
cp 文件/目录拷贝,可结合通配符*使用
常用参数:
cp 源文件 目标路径
注:如果是个文件夹需要拷贝,需要加参数 -r ,否则无法拷贝目录
如果目标文件有内容,那会被覆盖为源文件内容
2 文件管理
2.1 查询帮助
空格键:显示下一屏
enter键:一次滚动一行
b:回滚一屏
f:前滚一屏
q:退出
# 命令格式 command --help 显示命令帮助信息
eg:ls --help
# man 查询命令使用手册
eg:man ls
2.2 查看命令
ls: 显示文件
命令用法:ls
常用参数:
-a:显示指定目录下所有子目录与文件,包括隐藏文件
-l:以列表方式显示文件详细信息
-h:配合-l以人性化方式显示文件大小
通配符
*:代表文件名中任意个数字符
?:代表文件名中任意一个字符
[acd]:匹配a\c\d中任意一个
[a-f]:匹配a到f范围内的任意一个字符
2.3 vi
vi:文件编辑命令(如果文件存在就打开文件,文件不存在就创建一个新的文件)
1、打开一个文件:vi 文件名
2、进入编辑模式:键盘i
3、退出编辑模式:在编辑模式下按ESC键
4、进入命令模式:键盘上的: 号键
5、搜索内容:在命令模式下输入/pattern
6、强制退出(不保存)::q!
7、退出保存::wq
8、一般退出::q
9、保存文件::w
命令分类 | 命令 | 说明 |
---|---|---|
进入文本输入模式 | ||
i | 是从光标当前位置开始输入内容 | |
a | 是从光标下个位置开始输入内容 | |
o | 插入新行,从行首开始输入文字 | |
进入末行模式 | ||
: | 从命令模式进入末行模式 | |
x | 删除光标前一个字符 | |
删除命令 | ||
dd | 删除光标所在行 | |
n dd | 删除指定行数 | |
删除命令 | ||
dd | 删除光标所在行 | |
n dd | 删除指定行数 | |
撤销命令 | ||
u | 撤销 | |
复制粘贴命令 | ||
yy | 复制光标所在行 | |
n yy | 复制指定行数 | |
p | 在光标所在位置开辟一行,粘贴 | |
查找命令 | ||
/字符串 | 查找指定字符串 | |
n | 查找下一个 | |
N | 查找上一个 |
- name 按照文件名进行查找
- type 按照文件类型进行查找
- perm 按照文件执行权限进行查找
查找文件(没有找到无返回结果)
find /home -name "test"
find . -name "test.txt"
find . -type f -name "test"
find . -perm 644
查找并执行命令
find /home -name "test" -exec ls -l {} \; 显示文件详细信息
find . -type f -exce rm {} \; 查找并删除文件(无确认)
find . -name "test" -ok rm {} \; 查找并删除文件(有确认)
find /etc -name "test" -exec grep "root" {} \; 在test文件中查找root内容
2.6 grep
grep:完成对文本文件内容的模式查找,所谓模式查找就是支持正则表达式查找。
命名格式:grep 规则 文件名
配合匹配符:
“^a” # 查找以a开头的行
“rKaTeX parse error: Expected 'EOF', got '#' at position 4: " #̲ 查找以r结尾的行 "^a.…” # 同时查找以a开头同时以r结尾的行
“^a.*h.*r$” # 同时查找以a开头,包含字符h,并以r结尾的行
grep常用参数:
-c 只输出匹配行的计数:grep -c 内容 文件
-i 不区分大小写(只适用单字符):grep -i 字符 文件
-h 查询多文件时不显示文件名: grep -h 字符 文件
-l 查询多文件时只输出包含匹配字符的文件名: grep -l 字符 文件
-n 显示匹配行及行号: grep -n -i 字符 文件
-v 显示不包含匹配文本的所有行: grep -v 字符 文件
2.7 cat
cat : 显示文件内容
命令用法:
cat 文件名1 文件名2
cat /proc/version # 查看操作系统信息
常用参数:
-n:对所有输出行进行编号
-b:与-n相似,但对于空白行不编号
-v:显示控制字符
2.8 head tail
head tail :从文件的首/尾进行查看
命令用法:
head 文件1 文件2
tail 文件1 文件2
tail -f 文件名 # 查看日志
tail -f /var/log/messages # 实时监控Linux系统
常用参数:
-n:指定显示行数
2.9 more
more : 分页显示文件内容
命令用法:
more [options] 文件名
参数:
-num :每页显示多少行内容
+num:从多少行开始显示
2.10 文件权限
Linux中将文件权限分为只读、可写、执行三种,分别是r(read)、w(write)、x(execute)表示。
- 1、表示文件类型,“d"表示该文件是目录,也就是文件夹;”-"表示该文件是一般文件;"l"表示该文件是一个链接,也就是快捷方式。
- 2、表示文件所有者的权限,其中r是只读权限,w是写权限,x是执行权限
- 3、表示文件所属组的权限
- 4、表示其他人对该文件拥有的权限
- 5、表示连接数,即有多少个链接指向该文件
- 6、表示文件拥有者
- 7、表示文件所属组
- 8、表示文件大小
- 9、表示文件最后修改日期
- 10、文件名称
2.10.1 修改文件权限
chmod :修改文件/文件夹权限
命名格式:
chmod [-R] 权限 文件名/路径名
注:更改文件夹权限需要加大写的r
权限定义的两种方式
- 数字表示法
r代表可读,用数字4表示
w代表可写,用数字2表示
x代表可执行,用数字1表示
如果没有相应的权限用0表示,最后将3个位的数字累加起来即可。
如:777代表文件所有者、所属组及其他人均具备的读写执行权限 - 加减权限法
+:添加权限(w/r/x)
-:删除权限(w/r/x)
u:文件拥有者 g:文件所属组 o:其他人 a:所有人
chmod u+x* 为文件所有者添加执行权限
chmod g+rx* 为文件所属组添加可读可执行权限
chmod a-r* 为所有人去掉可读权限
chmod gu-x* 为文件所有者和所属组去掉可执行权限
附:
chgrp :修改文件/文件夹所属组
命名格式:
chgrp [-R] 组名 文件名/路径名
chown :修改文件/文件夹所有者
命名格式:
chown [-R] 用户名 文件名/路径名
2.10.2 where is
查找系统文件的位置,通常用于系统自带的二进制文件的查找。普通文件查找应该使用find命令。
命名格式:
where is 文件名
2.11 管道符
“|”:命令1展示的输出结果,作为命令2的输出
常用命令:常结合grep使用
命令| grep “规则”
2.12 echo
echo :显示字符串或将字符内容写在文本中。
命名格式:
echo 字符串内容
常用参数:
-e :让字符串含有的转义符生效
2.13 重定向
“>”:新建重定向
“>>”:追加重定向
“|”:
命名格式:
文本流 > 文件名
文本流 >> 文件名
3 系统相关信息
3.1 df
df: 查看磁盘情况
附:du -h 文件/目录 # 查看文件大小
命令用法:df [选项]
常用参数:
-h:以人性化的方式显示文件大小
3.2 ps
ps:查看系统进程信息
命令用法:ps [选项]
常用命令:
ps -ef | grep tomcat 通过应用名称查找进程信息,一般关注进程ID
-a:显示终端上所有的进程,包括其他用户进程
-u:显示进程详细状态
-x:显示没有控制终端进程
3.3 top
top:动态显示进程运行状态
说明:退出时按q
重要字段:
PID:进程ID号
USER:运行进程用户
%CPU:进程CPU占有率
&MEM:进程内存占有率
%COMMAND:启动进程的命令名
3.4 kill
kill:通过进程ID杀死对应的进程(通常用于强制退出程序)
常用命令:
kill -9 pid
4 网络相关命令
4.1 ping
ping: 查看与目标主机是否连通
常用命令:
ping ip地址
4.2 ifconfig
ifconfig: 显示Linux网络设备信息
说明:windows中是 ipconfig
4.3 netstat
netstat : 查看进程占用端口信息及进程id
常用命令:
netstat -apn | grep 端口名
5 备份压缩
5.1 gzip
gzip:压缩/解压文件(gz后缀结尾) ,压缩后源文件自动删除
常用命令:
gzip 文件名 # 压缩为gz后缀的文件(将对每个文件进行单独压缩,不是压缩到一起)
gzip -d xxx.gz # 解压缩xxx.gz文件
gzip -r 文件夹 # 压缩文件夹,压缩的不是文件夹本身而是该目录下的子文本文件
gzip -rd 文件夹 # 解压文件夹,解压的是目录下的子文本文件
5.2 tar
tar:压缩/解压文件(tar.gz后缀结尾)
常用命令:
文件压缩:tar zcf 目标文件名.tar.gz 源文件
文件解压:tar zxf 目标文件名.tar.gz
5.3 zip&unzip
zip:压缩文件/文件夹为zip结尾的压缩文件
常用命令:
zip xxx.zip 待压缩文件:将待压缩文件压缩成xxx.zip文件
zip -r xxx.zip 待压缩文件夹:将待压缩的文件夹压缩为xxx.zip压缩文件(压缩文件夹时必须指定-r参数,否则无法压缩全部文件)
unzip:解压缩zip结尾的压缩文件
常用命令:
unzip xxx.zip
6 tar打包文件
tar命令作用就是将多个文件或目录打包成一个文件
tar -cvf 包名.tar 文件或目录 # 打包
tar -tvf 包名.tar # 查看打包文件内容
tar -xvf 包名.tar # 解包
tar与gzip连用
tar -zcvf 压缩包名.tar.gz 文件目录 # 打包同时用gzip压缩
tar -zxvf 压缩包名.tar.gz # 打包 # 用gzip解压后同时解包
7 rpm包安装
rpm是centos官方库提供的编译包,很多centos系统中的工具或依赖包都可以通过rpm包的形式来进行安装和升级
使用方法:
安装rpm包:rpm -ivh xxx.rpm
卸载rpm包:rpm -e xxx.rpm
升级rpm包:rpm -uvh xxx.rpm
8 用户权限
8.1 切换用户
命令格式 su [用户名]
常用选项
- :切换为其他用户,同时切换到用户主目录
8.2 退出当前用户
exit # 退出当前用户
8.3 新增用户
命令格式 useradd [ 选项] [用户名]
-u 目录名 # 指定新用户的主目录
-m :如果-d参数中指定的主目录不存在,则自动创建这个目录
eg:useradd -d /home/abc abc -m # 新增用户abc,主目录为/home/abc
8.4 修改密码
passwd [用户名]
8.5 删除用户
命令格式 userdel [ 选项] [用户名]
-f # 强制删除账号
-r # 用户主目录中的文件将随用户主目录一起删除
eg:userdel -r abc # 删除用户abc,同时删除主目录
总结
基础命令用熟练