Linux常用基础命令(持续更新)

Linux命令总结

声明

  • 本文中,[参数]表示文件、目录或路径; [name]表示文件名;

    ​ [number]表示任意整数;[letter]表示任意字母;[word]表示任意内容;


man 查看帮助手册

语法形式

man	[linux命令]

示例

[root@Dezyan ~]# man mkdir

–help 查看帮助信息

语法形式

[Linux命令] --help

示例

[root@Dezyan ~]# mkdir --help

shutdown 关机重启命令

语法形式

shutdown
shutdown [选项]

选项

-c 				# 取消关机
-h now/[number] # now:立刻关机;[number]:n分钟后关机
				# <=>halt;init 0;
-r [number] 	# [number]:n分钟后重启系统;不加[number]:默认一分钟后重启
				# <=>reboot;init 6;

pwd 查看当前所在的路径

语法形式

pwd

示例

[root@Dezyan ~]# pwd
/root

cd 切换用户当前工作目录

语法形式

cd [选项] [参数]

选项(可为空)

~	# 切换到家目录 <=> 直接输入cd
-	# 返回上一次所在的目录
.	# 进入当前目录
..	# 进入上一级目录
	# ../../	进入上两级目录
/	# 进入到根目录

示例

#进入到/opt目录下
[root@Dezyan ~]# cd /opt
[root@Dezyan opt]#

ls 显示目录内容列表

语法形式

ls [选项] [参数]

选项(可为空)

-l	#显示文件的详细信息	<=>	ll
-a	#显示目录下所有文件信息(包括隐藏文件)
-i	#显示文件inode号
-s	#显示文件大小信息
-h	#显示文件大小信息(以人类可读方式查看)
-t  # 按时间信息排序。

示例

[root@Dezyan ~]# ls -l /opt/
总用量 0
dr-xr-xr-x 5 root root 79  324  2023 kylin-sm-package
drwxr-xr-x 4 root root 58 1025 00:43 patch_workspace

touch 创建新的空文件

语法形式

touch [参数] [参数] ....

参数选项

{[number]/[letter]..[number]/[letter]}	#批量创建文件

示例

#创建单个文件
[root@Dezyan ~]# touch 1.txt
#同一目录下创建多个文件
[root@Dezyan ~]# touch 1.txt 2.txt 3.txt
#不同目录下创建多个文件
[root@Dezyan ~]# touch 1.txt /opt/2.txt
#批量创建Dezyan01.txt....Dezyan10.txt文件
[root@Dezyan Dezyan01]# touch Dezyan{01..10}.txt
[root@Dezyan Dezyan01]# ls
Dezyan01.txt  Dezyan03.txt  Dezyan05.txt  Dezyan07.txt  Dezyan09.txt
Dezyan02.txt  Dezyan04.txt  Dezyan06.txt  Dezyan08.txt  Dezyan10.txt

注意

#如果创建的文件存在,只会修改文件时间,不会修改内容;
#使用绝对路径创建时,必须保证目录存在;

cat 查看文件的内容

语法形式

cat [选项] [参数]

选项

-n	#显示文件行数
-E	#每行行尾显示'$'符

示例

[root@Dezyan ~]# cat -n /etc/hosts
     1	127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
     2	::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

mkdir 创建目录

语法形式

mkdir [选项] [参数]

选项

-p	#递归创建目录

参数选项

{[number]/[letter]..[number]/[letter]}	#批量创建目录

示例

#同一目录下创建多个目录
[root@Dezyan dzt]# mkdir a b c
[root@Dezyan dzt]# ls
a  b  c
#在不同目录下创建多个目录
[root@Dezyan dzt]# mkdir f /opt/e
#递归创建多级目录
[root@Dezyan dzt]# mkdir -p /aa/bb/cc/dd
#批量创建Dezyan01....Dezyan10目录
[root@Dezyan bb]# mkdir Dezyan{01..10}
[root@Dezyan bb]# ls
cc        Dezyan02  Dezyan04  Dezyan06  Dezyan08  Dezyan10
Dezyan01  Dezyan03  Dezyan05  Dezyan07  Dezyan09

tree 树状图列出目录的内容

语法形式

tree [选项] [参数]

选项

-L [number]	#显示一级目录下所有文件

示例

#显示目录下所有文件
[root@Dezyan ~]# tree dzy
dzy
├── a
│   └── b
│       └── c
│           └── d
│               └── e
#显示目录下一级目录的所有文件
[root@Dezyan ~]# tree -L 1 dzt
dzt
├── a

cp 文件的复制操作

语法形式

cp [选项] [源文件地址参数] [目标地址参数]

选项

-r	#递归处理,将指定目录下的所有文件与子目录一并处理;
-i	#覆盖既有文件之前先询问用户;
-p	#保留源文件或目录的属性;
-d	#当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
-a	#此参数的效果和同时指定"-dpR"参数相同;

示例

#将某一文件复制到某一目录之中
[root@Dezyan ding]# cp 1.txt /zhi/
[root@Dezyan ding]# ll /zhi
-rw-r--r-- 1 root root 11 1025 23:09 1.txt
#将某一目录及目录中的所有文件复制到另一个目录之中
[root@Dezyan ding]# ll aa/bb/cc/dd/2.txt
-rw-r--r-- 1 root root 0 1025 23:11 aa/bb/cc/dd/2.txt
[root@Dezyan ding]# cp -r /ding /zhi
[root@Dezyan ding]# tree /zhi
/zhi
├── 1.txt
└── ding
    ├── 1.txt
    └── aa
        └── bb
            └── cc
                └── dd
                    └── 2.txt                    

mv 移动文件或对文件重命名

语法形式

mv [选项] [源文件地址参数] [目标地址参数]

选项

-i	#移动既有文件之前先询问用户;
-t	#可更改语法顺序为	mv [选项] [目标地址] [源文件地址] 

示例

#对当前目录的文件进行重命名(移动同理)
[root@Dezyan ding]# ll
-rw-r--r-- 1 root root 11 1025 23:09 1.txt
drwxr-xr-x 3 root root 16 1025 23:20 aa
[root@Dezyan ding]# mv ./1.txt ./aa.txt
[root@Dezyan ding]# ls
aa  aa.txt

rm 删除给定的文件和目录

语法形式

rm [选项] [参数] [参数] [参数] ...

选项

-i	#删除文件之前先询问用户;
-r	#递归处理,将指定目录下的所有文件与子目录一并处理;
-f	#强制删除文件或目录;

示例

#强制删除一个(多个)文件
[root@Dezyan ding]# touch 1 2 3 4 
[root@Dezyan ding]# ls
1  2  3  4  aa  aa.txt
[root@Dezyan ding]# rm -f 1 2 3 4
[root@Dezyan ding]# ls
aa  aa.txt
#强制删除一个目录及目录下的所有文件
[root@Dezyan ding]# tree aa
aa
└── bb
    └── cc
        └── dd
            └── 2.txt
3 directories, 1 file
[root@Dezyan ding]# rm -rf aa
[root@Dezyan ding]# tree aa
aa [error opening dir]
0 directories, 0 files

vi编辑器

三种模式及相关命令

  • 命令行模式(在其他两种模式下,按Esc即可进入) (使用vi编辑器是此模式为进入时的默认模式)

    相关命令

<#>#移动:
G		#移动光标到文件<最后一行>;
gg		#移动光标到文件内容的的<第一行>;
Ngg		#移动光标到文件内容的<第N行>;
^		#移动光标到当前行<行首>;
$		#移动光标到当前行<行尾>;
##删除:
x或X		#删除一个字符,x删除光标<后>的,而X删除光标<前>的;
D		#删除从当前光标到光标所在行尾的<全部字符>;
dd		#删除光标行<整行>的内容;
ndd		#删除当前行及其后<n-1行>;
##复制粘贴:
nyy		#将当前行及其下n行的内容复制;
p		#粘贴文本操作,将复制的内容粘贴到当前光标所在位置的<下方>;
P(大写)  #粘贴文本操作,将复制的内容粘贴到当前光标所在位置的<上方>;
##查找:
/[字符串]	#从<当前光标所在位置>开始向文件<尾部>查找指定字符串的内容;[字符串]	#从<当前光标所在位置>开始向文件<头部>查找指定字符串的内容;
				# n	向下继续查找;
				# N 向上继续查找;
##撤销:
u		#撤销上一次的操作;
  • 插入模式(在命令行模式下,按i即可进入)

    相关命令

A	#进入插入模式,并在<行末>添加文本;
a	#进入插入模式,并在当前字符<后>添加文本;
i	#进入插入模式,并在当前字符<前>插入文本;
I	#进入插入模式,并在<行首>插入文本;
o	#进入插入模式,并在当前行<后面>插入一空行;
O	#进入插入模式,并在当前行<前面>插入一空行;
  • 底行模式(在命令行模式下,按:即可进入)

    相关命令

set nu		#编辑时显示行号;
set nonu	#编辑时不显示行号;
w			#在执行存盘操作;w!表示强制保存;
q			#执行退出vi操作;q!表示强制退出;
wq			#执行存盘退出操作;
$			#光标跳转到最后一行的行首;

示例:批量添加注释

1.	使用vim打开文件;
2.	ctrl+v选择需要添加注释的行;
3.	输入大写I,并输入#;
4.	Esc退出,回车,完成批量注释;

echo 输出指定的字符串或者变量

语法形式

echo [word] [重定向符号] [参数]

重定向符号

>		#覆盖输入;
>>		#追加输入;

示例

#将手机号覆盖输入到phone.txt文件中
[root@Dezyan Dezyan01]# echo 110 > phone.txt
[root@Dezyan Dezyan01]# cat phone.txt 
110
#将手机号追加输入到phone.txt文件中
[root@Dezyan Dezyan01]# echo 120 >> phone.txt
[root@Dezyan Dezyan01]# echo 119 >> phone.txt
[root@Dezyan Dezyan01]# cat phone.txt 
110
120
119

tail 在屏幕上显示指定文件的末尾若干行

语法形式

tail [选项] [参数]

选项

-[number]/-n[number]	#输出文件的尾部number行内容;
-f						#显示文件最新追加的内容;

示例

#查看/var/log/secure日志文件中的后10行
[root@Dezyan ~]# tail -n10 /var/log/secure

head 显示文件的开头部分

语法形式

head [选项] [参数]

选项

				#默认显示前10行内容;
-[number]		#输出头部number行的内容;

示例

#查看/var/log/secure日志文件中前5行的内容
[root@Dezyan ~]# head -5 /var/log/secure 
Oct 24 16:46:29 Dezyan polkitd[758]: Loading rules from directory /etc/polkit-1/rules.d
Oct 24 16:46:29 Dezyan polkitd[758]: Loading rules from directory /usr/share/polkit-1/rules.d
Oct 24 16:46:29 Dezyan polkitd[758]: Finished loading, compiling and executing 5 rules
Oct 24 16:46:29 Dezyan polkitd[758]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
Oct 24 16:46:30 Dezyan sshd[948]: Server listening on 0.0.0.0 port 22.

less 上下翻页浏览文件内容

语法形式

less [参数]

快捷键

ctrl + f		#下一页;
ctrl + b		#上一页;
g				#第一行;
G				#最后一行;
[number]		#第N行;
/				#搜索;
q				#退出;

more 显示文件内容,每次显示一屏

语法形式

more [参数]

⭐️⭐️⭐️四剑客⭐️⭐️⭐️

find 在指定目录下查找文件

语法形式

find [参数1] [选项] [参数2]
find [参数1] [选项] [参数2] [or/and] [选项] [参数2]

参数1

#具体的文件或者目录;

参数2

可为文件名		#当为文件名时,必须要用“”引住文件名;
文件类型		 #- 普通文件类型 ;d 目录文件类型;l 链接文件类型;
文件inum号
文件大小		#<等于>、<大于>、<小于>分别用<空格><+><->;

or/and

#使用find命令可以多条件查找;
and			#需要同时满足两个、多个条件时(and可以省略);
or			#只需满足其中之一条件时;

选项

-type				#按照文件类型查找;
-name				#按照文件名字查找;
-iname				#按照文件名字查找(忽略大小写);
-inum				#按照文件iNode号查找;
-maxdepth [number]	#按照深度等级查找(向下遍历);
-mindepth [number]	#按照深度等级查找(向上遍历);
-size				#按照文件大小查找;

示例

#查找/目录下文件大小大于500M的文件
[root@Dezyan ~]# find / -size +500M
/proc/kcore
#查找/目录下文件大小大于500M且文件类型为目录
[root@Dezyan ~]# find / -size +50M -type d
xargs 给其他命令传递参数的一个过滤器

注意:在xargs后别名失效

语法形式

find …………	| xargs [文件操作,命令]
#可以理解为将|前执行的结果甩到末尾,再执行|后的命令

相关使用方法

ls -l/cat			# 查看找到的文件;
rm [选项]				#将查找的文件删除;
-i cp/mv {} [参数]	#将查找到的文件复制/移动到[参数位置];
cp/mv -t [参数]		#将查找到的文件复制/移动到[参数位置];

示例

#将/etc/下大于9M的文件复制到~目录下
[root@Dezyan ~]# find /etc/ -size +9M | xargs cp -t ~
[root@Dezyan ~]# ls ~ | grep 'hwd'
hwdb.bin
exec 调用并执行指定的命令

语法形式

find …………	-exec [命令] {} [参数] \;

注意:其中==;==为shell中命令的分隔符,可将多个命令同时执行:mkdir test;touch 1.txt。

相关使用方法

rm [选项] {} \;		#将查找的文件删除;
cp/mv {} [参数] \;	#将查找到的文件复制/移动到[参数位置];

示例

#将/etc/下大于9M的文件复制到~目录下
[root@Dezyan ~]# find /etc/ -size +9M -exec  cp {} ~ \;
[root@Dezyan ~]# ls ~ | grep 'hwd'
hwdb.bin
``和$()

语法形式

[命令+选项] `find ……………` 
[命令+选项] `find ……………` [参数]

$()效果与``相同

注意:如果一段命令被添加上了``,那么在整体命令中,需要先执行``中的命令,类似于运算法则中的加减乘除先算()。

相关使用方法

cp/mv `find ……` [参数]
ls/rm……

示例

#将/etc/下大于9M的文件复制到~目录下
[root@Dezyan ~]# cp -a `find /etc/ -size +9M` ~

grep 强大的文本搜索工具

语法形式

grep [选项] '[word]' [参数]

选项

--color			#对筛选出的WORD加颜色显示;
-i				#搜索时不区分大小写;
-n				#搜索出的结果显示行号;
-v				#反转查找;
-o				#只输出文件中搜索到的部分;
-E				#识别扩展正则进行过滤;
-r				#当指定要查找的是<目录>而非文件时,必须使用这项参数;

示例

#在/etc/passwd文件中过滤出root的行
[root@Dezyan ~]# grep --color 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
#不区分大小写过滤出 /etc/ssh/sshd_config 文件中包含`port 22`的行并输出行号
[root@Dezyan ~]# grep  --color  -i -n  'port 22'   /etc/ssh/sshd_config 
17:#Port 22
#排除(取反)/etc/ssh/sshd_config文件中的#(井号)
[root@Dezyan ~]# grep -v '#'  /etc/ssh/sshd_config
#过滤掉某文件中的空行,只显示有内容的行
[root@Dezyan ~]#grep -v '^$' file.txt 

sed 功能强大的流式文本编辑器

awk 文本和数据进行处理的编程语言

取列

语法形式

awk '{print $[number]}' [参数]

选项

[number]		#取出文件的第N行;
#				 NF代表最后一行;
#				 (NF-[number])代表倒数第n-1行;

示例

[root@Dezyan ~]# awk  '{print $NF}'   awk.txt

wc 统计文件的字节数、字数、行数

语法形式

wc [选项]  [参数]

选项

			# 查看文件的字节数、字数、行数;
-l			# 统计行数;

示例

#查看文件的字节数、字数、行数
[root@Dezyan ~]#wc test.txt
## 输出结果
  7     8     70     test.txt
##行数 单词数 字节数    文件名

#统计文件行数
[root@Dezyan ~]#wc -l /etc/services 
11473 /etc/services

sort 对文本文件中所有行进行排序

语法形式

sort [选项]  [参数]

选项

		#<=> cat 文件 | sort  默认第一列内容进行排序(从小到大)
-r		#第一列内容进行排序(从大到小);
-n		#按照数字正序排序;
-rn		#逆序排序;
-nk2	#按照第二列的大小正序排序;

示例

#将文件按照第二列的大小逆序排序
[root@Dezyan ~]# sort -rnk2  num.txt

uniq 显示或忽略重复的行。

语法形式

uniq [选项]  [参数]

选项

		#邻行去重;
-i      #忽略大小写的差异;
-d      #所有邻近的重复行只被打印一次。

示例

lrzsz 上传、下载文件的插件

安装

yum install -y  lrzsz

命令说明

rz 		#上传  rz回车即可或拖拽
sz 		#下载  sz /etc/hostname  下载指定的文件。

压缩与解压缩

tar

语法形式

tar [选项1] [压缩文件] 
tar [选项1] [压缩包存放路径] [待压缩文件]
tar [选项1] [压缩包存放路径] [待压缩文件] [选项2]

选项1

z		#采用zip方式进行压缩数据;
c		#创建一个压缩包文件;
v		#显示压缩数据过程;
f		#指定压缩路径信息 创建压缩包文件名称;
t		#显示压缩包内容;
x		#解压文件;

选项2

-C		#解压到指定目录;

选项应用

zcvf	简写zcf		#压缩文件;
ztvf	简写tf		#显示压缩包内容;
zxvf	简写xf		#解压文件

示例

#压缩1.txt文件到/tmp/目录中并命名为1.tar.gz
[root@Dezyan ~]# tar zcvf /tmp/a.tar.gz a.txt
#查看此压缩文件
[root@Dezyan ~]# tar ztvf /tmp/a.tar.gz 
-rw-r--r-- root/root       379 2024-10-26 17:14 a.txt
#解压此文件到/目录
[root@Dezyan ~]# tar zxvf /tmp/a.tar.gz -C /

注意:当使用zcf压缩文件时,会有如下提示信息:

[root@Dezyan ~]# tar zcf ./awk.tar.gz /etc/ 
tar: 从成员名中删除开头的“/”

该提示是tar命令安全机制,把绝对路径转换为相对路径。解压的时候当前目录。避免解压也是绝对路径,覆盖对应的文件目录。

gzip(不常用)

语法形式

gzip [参数]

区别

#使用此命令压缩文件会将原文件删除,只留下压缩文件;

zipunzip

zip 解压缩文件

语法形式

zip -rq [压缩包存放路径] [待压缩文件]
unzip 用于解压缩由zip命令压缩的压缩包

语法结构

unzip [参数]		#解压到当前目录

hostnamectl 查看与修改主机名

相关命令

hostnamectl							#查看主机名版本等信息
hostname							#查看主机名
cat /etc/hostname					#查看主机名
hostnamectl set-hostname [NAME]		#永久更改主机名
hostnamectl [NAME]					#临时更改主机名

查看版本信息

[root@Dezyan ~]# cat /etc/os-release

uname 打印系统信息(内核版本)

语法形式

uname [选项]

选项

-a		#按顺序打印全部信息
-r		#打印内核release

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值