Linux - 前端程序员常用的 Linux 命令
一、 CentOS (Community Enterprise Operating System)
Linux 系统中一切皆文件
社区企业操作系统,是Linux 发行版本之一,来自于 Red Hat Enterprise Linux 依照 开源代码 规定释出的源代码编译成的。
由于出自同样的源码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用, CentOS 完全开源
二、CentOS 目录介绍
-
/bin
: 二进制应用程序目录,其中包含二进制文件CentOS 系统所有用户使用的命令都在这个目录下,Binary 的缩写,这个目录中存放着常用的命令 -
/usr/sbin
: s 即 system,存放管理员使用的系统管理程序 -
/boot
: 开机启动引导目录, 启动boot(配置文件),其中包括了Linux 内核 文件与卡机所需的文件 -
/dev
: 设备目录, 设备(device)相关的目录和文件,其中包含了所有应用程序的配置文件,还包含了启动/停止某个程序的shell脚本 -
/etc
: 配置文件目录, 配置文件,启动脚本 -
/home
: 本地用户目录,所有不同权限的系统用户可在home目录分配存储个人用户的文件和资料 -
/lib
: 系统使用函数库的目录,程序在执行过程中,需要调用一些额外的参数是需要函数库的协助 -
/lost+fount
: 系统异常产生错误时,会将一些遗失的片段放置在这个目录下,通常这个目录会自动出现在装置目录下,如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+fount -
/media
: 挂载可移动介质,如 CD、数码相机、软盘、光盘等,可移除设备挂载目录 -
/mnt
: 挂载(mounted)文件系统, 临时安装目录,系统的管理员 可拥有挂载文件系统的权限 -
/opt
: 第三方软件安装目录,三方应用程序一般放在此目录下,但实际中通常习惯放在/usr/local
目录下 -
/proc
: 特殊的动态信息目录,此目录的数据都在内存中,如系统核心,外部设备,网络状态,应用于维护系统信息和状态,包括当前运行中进程的信息 -
/root
: root 用户主文件夹,读作 “slash-root”, 其他用户均放置在 /home 目录下 -
/run
: 系统运行时的时候所需的文件,以前在/var/run
中,后来拆分成独立的/run 目录,重启后重新生成对应的目录数据 -
/subin
: 重要的系统二进制文件,也是包含的二进制可执行文件,在这个目录下的linux命令通常都是由系统管理员使用的,对系统进行维护 -
/srv
: 服务启动之后需要访问的目录 -
sys
: 系统文件,根proc一样是一个虚拟的文件系统,记录核心系统硬件信息 -
/tmp
: **临时文件目录,**存放临时文件的目录,所有用户对该目录均可读写 -
/usr
: 应用程序放置目录,包含绝大部分所有用户(users)都能访问的应用程序文件 -
/var
: 经常变化的(variable)文件,存放系统执行过程中经常改变的文件,代表变量文件。在这个目录下可以找到内容可能增长的文件
三、 查看文件和目录列表
-
ls
: 显示当前目录下文件目录列表(按字母顺序排列) -
ls -F
: 列出有标记的目录列表- •
*
代表可执行文件 - •
/
表示目录 - •
=
表示 socket 文件 - •
@
表示软链接 - •
|
表示FIFOs 文件
- •
-
ls -a
: 列出包含隐藏文件的所有文件列表 -
ls -F -R -a
或ls -FRa
: 使用多个参数列出文件列表 -
ll
或ls -l
: 列出文件列表的详细信息- •
-
普通文件 - •
d
表示目录 - •
l
表示链接文件 - •
p
表示管理文件 - •
b
表示块设备文件
- •
-
- •
r (Read)
读取权限 - •
w (Write)
写入权限 - •
x (Execute)
执行权限
- •
-
- •
亮黄色表示设备文件 - •
亮蓝色表示链接文件 - •
灰蓝色表示目录 - •
亮红色表示压缩文件 - •
亮绿色表示可执行文件 - •
灰白色表示普通文件
- •
四、路径操作
-
pwd
: 查看当前目录的绝对路径 -
cd
: 切换路径 -
Tab 键
: 自动补全
五、文件/目录相关操作
<一>、创建
-
touch xxx
: 创建文件 -
mkdir xxx
: 创建目录
<二>、删除
-
rm 文件名
: 删除文件 -
rm -f 文件名
: 强制删除文件 -
rm -rf 目录
: 递归删除目录及目录下的所有文件 -
rm --help
: 删除命令参数介绍- •
-f
: 表示–force,忽略不存在的文件和参数,不提示任何信息,强制删除 - •
-i
: 进行任何形式的删除之前,必须先进行确认 - •
-r/-R
: 表示–recursive,递归删除该目录下所有目录层 - •
-d
: 表示–dir,删除可能包含有数据的目录
- •
<三>、移动
-
mv file_name 路径
: 移动文件至其他目录下,后面的路径可以是相对路径,也可以是绝对路径 -
mv --help
: 移动命令参数介绍- •
-b
: 若有文件覆盖时,则覆盖先行备份 - •
-f
: 强制移动文件,如果目标文件已经存在,则不回询问直接覆盖掉 - •
-i
: 如目标文件已经存在,覆盖时会先询问 - •
-n
: 不会覆盖已经存在的文件 - •
-u
: 若目标文件已经存在,且 source 比较新,才会更新 - •
-t
: 指定mv 的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后
- •
<四>、压缩和解压
常见的压缩包格式有.bz2
、.Z
、.gz
、.zip
、.xz
tar 命令介绍
-
tar
命令参数- •
-c
: 新建立压缩档案 - •
-x
: 解压缩 - •
-t
: 查看内容 - •
-u
: 更新原压缩包的内容 - •
-z
: gzip 的属性 - •
-j
: bz2 的属性 - •
-Z
: compress 的属性 - •
-v
: 显示所有过程 - •
-O
: 将文件解压缩成标准输出形式 - •
-f
: 使用档案名字,此参数都是在最后,其后面跟上一个档案的名字
- •
-
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```将所有 txt 文件打包成tar包
tar -cf file_name.tar *.txt -
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```向 file_name tar 中新增 g.txt 文件
tar -rf file_name.tar g.txt -
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```更新 file_name tar 的文件 为 a.txt
tar -uf file_name.tar a.txt -
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```
tar -tf file_name.tar -
tar -xf filename.tar
-
tar -czf alltxt.tar.gz alltext.txt
将alltxt.tar 包通过gzip 压缩为 alltxt.tar.gz 包 -
mv alltxt.tar.gz study/
zip 格式压缩与解压
centos 8 系统自带 zip、unzip 压缩与解压工具
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```
zip -v
unzip -v
yum -y update
yum -y install zip unzip
压缩文件
zip alltxt.zip alltxt.tar
解压文件
unzip alltxt.zip
## <五>、文件和目录重命名
--javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```
# 使用 mv 对文件重命名
mv alltxt.tar newtxt.tar
# 使用 rename 修改文件名称
rename 需要替换的字符 替换之后的字符 需要替换的文件名
-
- •
-v
: 表示 --verbose,打印修改之后文件的名称 - •
-n
: 表示 -no-act,测试命令,执行之后不会改变任何内容 - •
-o
: 表示 --no-overwrite, 表示重命名自后不会覆盖原有文件
- •
<六>、find 查找文件和目录
-
- •
f
: 普通文件 - •
d
; 目录 - •
l
: 符号链接 - •
b
: 块设备文件 - •
c
: 字符设备文件 - •
p
: 管道文件 - •
s
: 套接字文件
- •
-
-type
来限制文件的类型
–javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown```
find ./home -type d参数-name 可以按照文件名查找
查找home目录下所有的txt文件
find ./home -name *.txt使用 !取反排除指定的文件
查找home 目录下除了 .txt 以外的文件
find ./home ! -name *.txt对查找到的文件执行操作
find ./home -name *.txt -exec rm {} \
<七>、查看文件内容
file 查看文件类型
-
- •
-b
: 代表 --brief,显示查看结果时,不显示文件名 - •
-c
: 代表 --checking-printout, 显示指令执行的过程 - •
-f
: 表示–files-from FILE, 列出文件中文件名的类型 - •
-F
: 表示 --separator STRING,使用指定符号输出文件名后的默认 : - •
-i
: 输出 mime 类型的字符串 - •
-L
: 表示 dereference,查看对应文件的文件类型 - •
-z
: 表示 --uncompress 尝试查看压缩文件信息
- •
-
file a.txt
-
file -b a.txt
-
file -z alltxt.tar.gz
cat 查看文件内容
-
cat ./home
more 查看文件内容
tail 查看文件内容
六、Linux 编辑器
<一>、vim编辑器
vim 编辑器由 vi 发展而来,它的功能由代码补全、编译、错误跳转等
-
- •
普通模式
: 刚开始进入vim编辑器的时候,默认会进入普通模式- •
一般打开查阅,可以查看,但是不能更改文件的内容
- •
- •
插入模式
: 进入普通模式之后,按下i
就进入插入模式了,按下esc
可以从插入模式回到普通模式- •
编辑状态,可以更改文件的内容 - •
编辑完成之后,当前登录用户需要有文件写入权限才能保存成功
- •
- •
命令模式
: 在普通模式下 按下 (shift +:
)就进入命令模式,按下esc
回到普通模式- •
:wq
保存并退出 - •
:q!
不保存,强制退出 - •
w
保存 - •
q
退出
- •
- •