当前位置: 首页 > news >正文

Linux(4)|入门的开始:Linux基本指令(4)

 

目录

一、时间相关指令

1、日志的基本概念:

2、date显示

1、显示用法,使用者可以设定显示的格式,格式设定为一个‘+’后接数个标志

常用标记:

1、%H:小时(00-23)

2、%M:分钟(00-59)

3、%S:秒(00-59)

4、%X:相当于%H:%M:%S

5、%Y:完整年份(0000-9999)

6、%m:月份(01-12)

7、%d:日(01-31)

8、%F:相当于%Y-%m-%d

2、设置时间

1、date -S:设置当前时间,只有root权限才能设置,其他只能查看

2、date -S 20080523:设置成20080523,这样会把具体时间设置成空00:00:00

3、date -S 01:01:01:设置具体时间,不对日期做更改

4、设置全部:dete -S "01:01:01 2008-05-23"or"01:01:01 20080523"or"2008-05-23 01:01:01"or"20080523 01:01:01"

3、时间戳

1、时间->时间戳:date +%s

2、时间戳->时间:date -d@时间戳

3、Unix时间戳(英文为Unix epoch,Unix time,POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

3、cal指令

常用选项:

1、-3:显示系统前一个月、当前月和下一个月的月份

2、-j:显示在当年中的第几天(一年日期按天算,从1月1日算起,默认显示当前月在一年中的天数)

3、-y:显示当前年份的日历

二、其他指令

1、find指令

语法:find pathname -options

功能:用于在文件树中查找文案,并作出相应的处理(可能访问磁盘)

常用选项:

-name:按照文件名查找文件

2、find、which和whereis

1、find

2、which

3、whereis

3、grep指令:做文本过滤工具

语法:grep [选项] 搜寻字符串 文件

功能:在文件中搜索字符串,将找到的行打印出来

常用选项:

-i:忽略查找大小写的不同

-n:顺便输出行号

-v:反向选择,即显示出没有搜索字符串的行内容

grep的作用

1、grep ‘’ 文件:匹配全部

2、命令中带有文件的都可以配合grep用管道操作

3、场景需求

4、配合管道进行系统或进程的查找

4、zip/unzip指令

语法:zip xxx.zip 目录或文件 

功能:将目录或文件压缩成.zip格式

常用选项:

-r:递归处理,将指定目录下的所有文件和子目录一并处理

解压

-d:指定压缩路径

zip的检查是否安装和zip安装

1、zip --help:检查是否安装zip

2、安装(三种方法任选其一)

5、tar指令:打包/解包,不打开它也可以查看内容

用法:tar [选项] 文件与目录.....参数

常用选项:

-c:建立一个压缩文件的参数指令(create的意思)

-x:解开一个压缩文件的参数指令

-t:查看tarfile里面的文件

-z:是否同时具有gzip的属性?是否需要用gzip压缩?

-j:是否同时具有bzip2的属性?是否需要用bzip2压缩?

-v:压缩过程中显示文件!这很常用,但不建议用在背景执行过程

-f:使用档名,留意在f之后要立刻接档名!不要在加参数

-C:解压到指定目录

打包和压缩的方案有很多种

6、bc指令

bc命令可以很方便的进行浮点运算(计算器)

7、uname指令

语法:uname [选项]

功能:uname用来获取电脑和操作系统的相关信息,也可显示linux操作系统的版本、硬件的名称等基本信息

常用选项:

-a/-all :详细输出所有信息,依次为内核的名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称(x86_64=64位,x86=32位)

8、关机指令

语法:shutdown [选项]

常见选项:

-h:将系统的服务停掉后,立即关机

-r:在将系统的服务停掉之后就重新启动

-t sec:-t后面加秒数,即几秒后关机的意思

三、重要热键

1、Tab按键:具有命令补全和档案补齐的功能

2、ctrl+c按键:让当前程序停掉

3、ctrl+d按键:代表键盘输入结束(End Of File,EOF End O Finput)的意思;另外可以用来取代exit

4、ctrl+r:历史命令搜索,决定了,Linux系统一定记录了历史命令

四、Linux 常用指令学习小结


本篇博客主要介绍时间相关指令 、其他指令和热键(快捷键)

一、时间相关指令

1、日志的基本概念:

类比日记,日记包括时间、天气、内容等,而日志则包括时间、日志等级、日志具体信息、其他,把包含上述信息的一行写入到文件中,就形成了日志文件。程序运行到自己的每个关键时候,都要自己打日志。

2、date显示

date用法:date[OPIION]...[+FORMAT]

date指定格式显示时间:date +%Y:%m:%d(or date +%Y-%m-%d)

[xzx@instance-157t533k 9_21]$ date +%Y:%m:%d
2025:09:21
[xzx@instance-157t533k 9_21]$ date +%Y-%m-%d
2025-09-21

1、显示用法,使用者可以设定显示的格式,格式设定为一个‘+’后接数个标志

常用标记:
1、%H:小时(00-23)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 14:54:30 CST 2025
[xzx@instance-157t533k 9_21]$ date +%H
14
2、%M:分钟(00-59)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 14:55:05 CST 2025
[xzx@instance-157t533k 9_21]$ date +%M
55
3、%S:秒(00-59)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 14:55:59 CST 2025
[xzx@instance-157t533k 9_21]$ date +%S
03
4、%X:相当于%H:%M:%S
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 14:56:29 CST 2025
[xzx@instance-157t533k 9_21]$ date +%H:%M:%S
14:56:42
[xzx@instance-157t533k 9_21]$ date +%X
02:56:50 PM

可以看到只是多了一个PM

5、%Y:完整年份(0000-9999)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 15:00:01 CST 2025
[xzx@instance-157t533k 9_21]$ date +%Y
2025
6、%m:月份(01-12)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 15:00:35 CST 2025
[xzx@instance-157t533k 9_21]$ date +%m
09
7、%d:日(01-31)
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 15:01:05 CST 2025
[xzx@instance-157t533k 9_21]$ date +%d
21
8、%F:相当于%Y-%m-%d
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 15:01:57 CST 2025
[xzx@instance-157t533k 9_21]$ date +%F
2025-09-21
[xzx@instance-157t533k 9_21]$ date +%Y-%m-%d
2025-09-21

可以看到是一模一样的

2、设置时间

1、date -S:设置当前时间,只有root权限才能设置,其他只能查看
2、date -S 20080523:设置成20080523,这样会把具体时间设置成空00:00:00
3、date -S 01:01:01:设置具体时间,不对日期做更改
4、设置全部:dete -S "01:01:01 2008-05-23"or"01:01:01 20080523"or"2008-05-23 01:01:01"or"20080523 01:01:01"

3、时间戳

1、时间->时间戳:date +%s
[xzx@instance-157t533k 9_21]$ date +%s
1758439266
2、时间戳->时间:date -d@时间戳
[xzx@instance-157t533k 9_21]$ date
Sun Sep 21 15:23:00 CST 2025
[xzx@instance-157t533k 9_21]$ date +%s
1758439386
[xzx@instance-157t533k 9_21]$ date -d@1758439386
Sun Sep 21 15:23:06 CST 2025
3、Unix时间戳(英文为Unix epoch,Unix time,POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

3、cal指令

cal命令可以用来显示公历(阳历)、日历。公历是现在国际通用的历法,又称格列历,统称阳历。    ”阳历“又名”太阳历“,系以地球绕行太阳一周为一年,为西方各国所通用,故又名”西历“。

用法:cal[参数][月份][年份]

功能:由于查看日历等时间信息,如只有一个参数则表示年份(1-9999),如有两个参数则表示月份和年份

常用选项:
1、-3:显示系统前一个月、当前月和下一个月的月份
[xzx@instance-157t533k 9_21]$ cal -3August 2025         September 2025         October 2025    
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa1  2      1  2  3  4  5  6            1  2  3  43  4  5  6  7  8  9   7  8  9 10 11 12 13   5  6  7  8  9 10 11
10 11 12 13 14 15 16  14 15 16 17 18 19 20  12 13 14 15 16 17 18
17 18 19 20 21 22 23  21 22 23 24 25 26 27  19 20 21 22 23 24 25
24 25 26 27 28 29 30  28 29 30              26 27 28 29 30 31   
31                                                              
2、-j:显示在当年中的第几天(一年日期按天算,从1月1日算起,默认显示当前月在一年中的天数)

默认显示当前月

[xzx@instance-157t533k 9_21]$ cal -jSeptember 2025      
Sun Mon Tue Wed Thu Fri Sat244 245 246 247 248 249
250 251 252 253 254 255 256
257 258 259 260 261 262 263
264 265 266 267 268 269 270
271 272 273

一个参数表示年份(2025)

[xzx@instance-157t533k 9_21]$ cal -j 20252025                          January                       February         
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat1   2   3   4                            325   6   7   8   9  10  11    33  34  35  36  37  38  3912  13  14  15  16  17  18    40  41  42  43  44  45  4619  20  21  22  23  24  25    47  48  49  50  51  52  5326  27  28  29  30  31        54  55  56  57  58  59March                         April           
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat60            91  92  93  94  9561  62  63  64  65  66  67    96  97  98  99 100 101 10268  69  70  71  72  73  74   103 104 105 106 107 108 10975  76  77  78  79  80  81   110 111 112 113 114 115 11682  83  84  85  86  87  88   117 118 119 12089  90May                           June           
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat121 122 123   152 153 154 155 156 157 158
124 125 126 127 128 129 130   159 160 161 162 163 164 165
131 132 133 134 135 136 137   166 167 168 169 170 171 172
138 139 140 141 142 143 144   173 174 175 176 177 178 179
145 146 147 148 149 150 151   180 181July                         August          
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat182 183 184 185 186                       213 214
187 188 189 190 191 192 193   215 216 217 218 219 220 221
194 195 196 197 198 199 200   222 223 224 225 226 227 228
201 202 203 204 205 206 207   229 230 231 232 233 234 235
208 209 210 211 212           236 237 238 239 240 241 242243September                      October          
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat244 245 246 247 248 249               274 275 276 277
250 251 252 253 254 255 256   278 279 280 281 282 283 284
257 258 259 260 261 262 263   285 286 287 288 289 290 291
264 265 266 267 268 269 270   292 293 294 295 296 297 298
271 272 273                   299 300 301 302 303 304November                      December         
Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat305       335 336 337 338 339 340
306 307 308 309 310 311 312   341 342 343 344 345 346 347
313 314 315 316 317 318 319   348 349 350 351 352 353 354
320 321 322 323 324 325 326   355 356 357 358 359 360 361
327 328 329 330 331 332 333   362 363 364 365
334

两个参数表示月份和年份(8 2025)

[xzx@instance-157t533k 9_21]$ cal -j 8 2025August 2025        
Sun Mon Tue Wed Thu Fri Sat213 214
215 216 217 218 219 220 221
222 223 224 225 226 227 228
229 230 231 232 233 234 235
236 237 238 239 240 241 242
243
3、-y:显示当前年份的日历
[xzx@instance-157t533k 9_21]$ cal -y 2025                               January               February                 March       
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4                      1                      15  6  7  8  9 10 11    2  3  4  5  6  7  8    2  3  4  5  6  7  8
12 13 14 15 16 17 18    9 10 11 12 13 14 15    9 10 11 12 13 14 15
19 20 21 22 23 24 25   16 17 18 19 20 21 22   16 17 18 19 20 21 22
26 27 28 29 30 31      23 24 25 26 27 28      23 24 25 26 27 28 2930 31April                   May                   June        
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5                1  2  3    1  2  3  4  5  6  76  7  8  9 10 11 12    4  5  6  7  8  9 10    8  9 10 11 12 13 14
13 14 15 16 17 18 19   11 12 13 14 15 16 17   15 16 17 18 19 20 21
20 21 22 23 24 25 26   18 19 20 21 22 23 24   22 23 24 25 26 27 28
27 28 29 30            25 26 27 28 29 30 31   29 30July                  August                September     
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5                   1  2       1  2  3  4  5  66  7  8  9 10 11 12    3  4  5  6  7  8  9    7  8  9 10 11 12 13
13 14 15 16 17 18 19   10 11 12 13 14 15 16   14 15 16 17 18 19 20
20 21 22 23 24 25 26   17 18 19 20 21 22 23   21 22 23 24 25 26 27
27 28 29 30 31         24 25 26 27 28 29 30   28 29 3031October               November               December      
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4                      1       1  2  3  4  5  65  6  7  8  9 10 11    2  3  4  5  6  7  8    7  8  9 10 11 12 13
12 13 14 15 16 17 18    9 10 11 12 13 14 15   14 15 16 17 18 19 20
19 20 21 22 23 24 25   16 17 18 19 20 21 22   21 22 23 24 25 26 27
26 27 28 29 30 31      23 24 25 26 27 28 29   28 29 30 3130

一个参数表示年份

[xzx@instance-157t533k 9_21]$ cal -y 20242024                               January               February                 March       
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5  6                1  2  3                   1  27  8  9 10 11 12 13    4  5  6  7  8  9 10    3  4  5  6  7  8  9
14 15 16 17 18 19 20   11 12 13 14 15 16 17   10 11 12 13 14 15 16
21 22 23 24 25 26 27   18 19 20 21 22 23 24   17 18 19 20 21 22 23
28 29 30 31            25 26 27 28 29         24 25 26 27 28 29 3031April                   May                   June        
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5  6             1  2  3  4                      17  8  9 10 11 12 13    5  6  7  8  9 10 11    2  3  4  5  6  7  8
14 15 16 17 18 19 20   12 13 14 15 16 17 18    9 10 11 12 13 14 15
21 22 23 24 25 26 27   19 20 21 22 23 24 25   16 17 18 19 20 21 22
28 29 30               26 27 28 29 30 31      23 24 25 26 27 28 2930July                  August                September     
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5  6                1  2  3    1  2  3  4  5  6  77  8  9 10 11 12 13    4  5  6  7  8  9 10    8  9 10 11 12 13 14
14 15 16 17 18 19 20   11 12 13 14 15 16 17   15 16 17 18 19 20 21
21 22 23 24 25 26 27   18 19 20 21 22 23 24   22 23 24 25 26 27 28
28 29 30 31            25 26 27 28 29 30 31   29 30October               November               December      
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa1  2  3  4  5                   1  2    1  2  3  4  5  6  76  7  8  9 10 11 12    3  4  5  6  7  8  9    8  9 10 11 12 13 14
13 14 15 16 17 18 19   10 11 12 13 14 15 16   15 16 17 18 19 20 21
20 21 22 23 24 25 26   17 18 19 20 21 22 23   22 23 24 25 26 27 28
27 28 29 30 31         24 25 26 27 28 29 30   29 30 31

二、其他指令

1、find指令

Linux下find命令在目录结构中搜索文件,并执行指定的操作

Linux下find命令提供了相当多的查找条件,功能相当强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下

即使系统中含有网络文件系统(NFS),find命令在该文件系统同样有效,只要你具有相应的权限

语法:find pathname -options

功能:用于在文件树中查找文案,并作出相应的处理(可能访问磁盘)

常用选项:

-name:按照文件名查找文件

[xzx@instance-157t533k home]$ find -name code.c
./xzx/9_19/test_gdb/code.c
./xzx/9_12/code.c
./xzx/9_7/lesson6/code.c
[xzx@instance-157t533k home]$ pwd
/home

普通用户在系统目录下查找会受到Premission denied,但在/home/xxx/下不会

[xzx@instance-157t533k /]$ find -name code.c
find: ‘./run/chrony’: Permission denied
find: ‘./run/mdadm’: Permission denied
find: ‘./run/rpcbind’: Permission denied
find: ‘./run/cryptsetup’: Permission denied
find: ‘./run/sudo’: Permission denied
find: ‘./run/systemd/ask-password-block’: Permission denied
find: ‘./run/systemd/inaccessible’: Permission denied
find: ‘./etc/audisp’: Permission denied
find: ‘./etc/audit’: Permission denied
find: ‘./etc/dhcp’: Permission denied
find: ‘./etc/selinux/targeted/active’: Permission denied
find: ‘./etc/selinux/final’: Permission denied
find: ‘./etc/grub.d’: Permission denied
find: ‘./etc/polkit-1/localauthority’: Permission denied
find: ‘./etc/polkit-1/rules.d’: Permission denied
find: ‘./etc/firewalld’: Permission denied
find: ‘./etc/pki/CA/private’: Permission denied
find: ‘./etc/pki/rsyslog’: Permission denied
find: ‘./etc/sudoers.d’: Permission denied
find: ‘./boot/grub2’: Permission denied

我们在/根目录下,find会受到限制,但在我翻看过程中发现还是找到了对应文件名的文件,不过隐藏在大堆信息中不方便查看

而在home家目录下就不会

[xzx@instance-157t533k home]$ find -name code.c
./xzx/9_19/test_gdb/code.c
./xzx/9_12/code.c
./xzx/9_7/lesson6/code.c
[xzx@instance-157t533k home]$ pwd
/home

2、find、which和whereis

1、find

可以在指定的路径下进行文件的搜索(真的在磁盘文件中查找)

2、which

可以在指定路径下/usr/bin/,搜索指令文件

[xzx@instance-157t533k ~]$ which cat
/usr/bin/cat
[xzx@instance-157t533k ~]$ which cd
/usr/bin/cd

3、whereis

在系统特定的路径下查找,既可以找到可执行程序,又可以找到手册、安装包、压缩包等之类

3、grep指令:做文本过滤工具

语法:grep [选项] 搜寻字符串 文件

功能:在文件中搜索字符串,将找到的行打印出来

常用选项:

-i:忽略查找大小写的不同
[xzx@instance-157t533k 9_26]$ cat -n data.txt1	hello world2	hello linux3	Hello Linux4	Hello World5	lovely cat6	lovely dog
[xzx@instance-157t533k 9_26]$ grep -i hello data.txt
hello world
hello linux
Hello Linux
Hello World
-n:顺便输出行号
[xzx@instance-157t533k 9_26]$ cat -n data.txt1	hello world2	hello linux3	Hello Linux4	Hello World5	lovely cat6	lovely dog
[xzx@instance-157t533k 9_26]$ grep -n -i hello data.txt
1:hello world
2:hello linux
3:Hello Linux
4:Hello World
-v:反向选择,即显示出没有搜索字符串的行内容
[xzx@instance-157t533k 9_26]$ cat -n data.txt1	hello world2	hello linux3	Hello Linux4	Hello World5	lovely cat6	lovely dog
[xzx@instance-157t533k 9_26]$ grep -v hello data.txt
Hello Linux
Hello World
lovely cat
lovely dog

grep的作用

1、grep ‘’ 文件:匹配全部
[xzx@instance-157t533k 9_26]$ grep '' data.txt
hello world
hello linux
Hello Linux
Hello World
lovely cat
lovely dog
2、命令中带有文件的都可以配合grep用管道操作
[xzx@instance-157t533k 9_26]$ cat data.txt
hello world
hello linux
Hello Linux
Hello World
lovely cat
lovely dog
[xzx@instance-157t533k 9_26]$ cat data.txt | grep lovely
lovely cat
lovely dog
3、场景需求

1、在开源项目中查找main函数的位置

2、grep后可以跟多个文件

3、grep -Rn " xxx":在目录中递归查找对应的字符串,并标记行号

4、配合管道进行系统或进程的查找

4、zip/unzip指令

语法:zip xxx.zip 目录或文件 

功能:将目录或文件压缩成.zip格式

常用选项:

-r:递归处理,将指定目录下的所有文件和子目录一并处理
[xzx@instance-157t533k 9_26]$ tree test
test
└── dir1├── dir2│   ├── dir3│   │   └── test3│   └── test2└── test1
[xzx@instance-157t533k 9_26]$ zip test.zip test/. -radding: test/./ (stored 0%)adding: test/./dir1/ (stored 0%)adding: test/./dir1/test1 (stored 0%)adding: test/./dir1/dir2/ (stored 0%)adding: test/./dir1/dir2/test2 (stored 0%)adding: test/./dir1/dir2/dir3/ (stored 0%)adding: test/./dir1/dir2/dir3/test3 (stored 0%)
[xzx@instance-157t533k 9_26]$ ll
total 12
-rw-rw-r-- 1 xzx xzx   70 Sep 26 15:46 data.txt
drwxrwxr-x 3 xzx xzx 4096 Sep 26 16:46 test
-rw-rw-r-- 1 xzx xzx 1166 Sep 26 16:48 test.zip

将test目录压缩当前目录下

解压
-d:指定压缩路径

将刚压缩的test.zip解压到test_copy目录下

[xzx@instance-157t533k 9_26]$ unzip test.zip -d test_copy
Archive:  test.zipcreating: test_copy/test/creating: test_copy/test/dir1/extracting: test_copy/test/dir1/test1  creating: test_copy/test/dir1/dir2/extracting: test_copy/test/dir1/dir2/test2  creating: test_copy/test/dir1/dir2/dir3/extracting: test_copy/test/dir1/dir2/dir3/test3  
[xzx@instance-157t533k 9_26]$ tree test_copy
test_copy
└── test└── dir1├── dir2│   ├── dir3│   │   └── test3│   └── test2└── test14 directories, 3 files
[xzx@instance-157t533k 9_26]$ tree test
test
└── dir1├── dir2│   ├── dir3│   │   └── test3│   └── test2└── test13 directories, 3 files

zip的检查是否安装和zip安装

1、zip --help:检查是否安装zip
[xzx@instance-157t533k 9_26]$ zip --help
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
Zip 3.0 (July 5th 2008). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]The default action is to add or replace zipfile entries from list, whichcan include the special name - to compress standard input.If zipfile and list are omitted, zip compresses stdin to stdout.-f   freshen: only changed files  -u   update: only changed or new files-d   delete entries in zipfile    -m   move into zipfile (delete OS files)-r   recurse into directories     -j   junk (don't record) directory names-0   store only                   -l   convert LF to CR LF (-ll CR LF to LF)-1   compress faster              -9   compress better-q   quiet operation              -v   verbose operation/print version info-c   add one-line comments        -z   add zipfile comment-@   read names from stdin        -o   make zipfile as old as latest entry-x   exclude the following names  -i   include only the following names-F   fix zipfile (-FF try harder) -D   do not add directory entries-A   adjust self-extracting exe   -J   junk zipfile prefix (unzipsfx)-T   test zipfile integrity       -X   eXclude eXtra file attributes-y   store symbolic links as the link instead of the referenced file-e   encrypt                      -n   don't compress these suffixes-h2  show more help
2、安装(三种方法任选其一)

1、登录root账号,输入yum install -y zip unzip

2、su/su - 由普通用户切换为root用户,输入yum install -y zip unzip,ctrl+d退出root

3、普通用户使用sudo yum install -y zip unzip

[xzx@instance-157t533k 9_26]$ sudo yum install -y zip unzip
[sudo] password for xzx: 
Loaded plugins: langpacks, versionlock
base                                                                             | 3.6 kB  00:00:00     
epel                                                                             | 4.3 kB  00:00:00     
extras                                                                           | 2.9 kB  00:00:00     
mysql-connectors-community                                                       | 3.0 kB  00:00:00     
mysql-tools-community                                                            | 3.0 kB  00:00:01     
mysql57-community                                                                | 2.6 kB  00:00:00     
updates                                                                          | 2.9 kB  00:00:00     
Excluding 1 update due to versionlock (use "yum versionlock status" to show it)
Package zip-3.0-11.el7.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package unzip.x86_64 0:6.0-19.el7 will be updated
---> Package unzip.x86_64 0:6.0-24.el7_9 will be an update
--> Finished Dependency ResolutionDependencies Resolved========================================================================================================Package              Arch                  Version                        Repository              Size
========================================================================================================
Updating:unzip                x86_64                6.0-24.el7_9                   updates                172 kTransaction Summary
========================================================================================================
Upgrade  1 PackageTotal download size: 172 k
Downloading packages:
No Presto metadata available for updates
unzip-6.0-24.el7_9.x86_64.rpm                                                    | 172 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transactionUpdating   : unzip-6.0-24.el7_9.x86_64                                                            1/2 Cleanup    : unzip-6.0-19.el7.x86_64                                                              2/2 Verifying  : unzip-6.0-24.el7_9.x86_64                                                            1/2 Verifying  : unzip-6.0-19.el7.x86_64                                                              2/2 Updated:unzip.x86_64 0:6.0-24.el7_9                                                                           Complete!

出现complete即代表安装完成

5、tar指令:打包/解包,不打开它也可以查看内容

用法:tar [选项] 文件与目录.....参数

常用选项:

-c:建立一个压缩文件的参数指令(create的意思)
-x:解开一个压缩文件的参数指令
-t:查看tarfile里面的文件
-z:是否同时具有gzip的属性?是否需要用gzip压缩?
-j:是否同时具有bzip2的属性?是否需要用bzip2压缩?
-v:压缩过程中显示文件!这很常用,但不建议用在背景执行过程
-f:使用档名,留意在f之后要立刻接档名!不要在加参数
-C:解压到指定目录

打包和压缩的方案有很多种

tar czf xxx :打包压缩

tar tzf xxx.tgz :预览

tar xzf xxx.tgz :解压、解包

tgz后缀 = tar打包后缀 + gz压缩后缀

6、bc指令

bc命令可以很方便的进行浮点运算(计算器)

需要配合管道进行

[xzx@instance-157t533k 9_26]$ echo 3.14*2 | bc
6.28

7、uname指令

语法:uname [选项]

功能:uname用来获取电脑和操作系统的相关信息,也可显示linux操作系统的版本、硬件的名称等基本信息

常用选项:

-a/-all :详细输出所有信息,依次为内核的名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称(x86_64=64位,x86=32位)
[xzx@instance-157t533k 9_26]$ uname -a
Linux instance-157t533k 3.10.0-1160.83.1.el7.x86_64 #1 SMP Wed Jan 25 16:41:43 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

8、关机指令

语法:shutdown [选项]

常见选项:

-h:将系统的服务停掉后,立即关机
-r:在将系统的服务停掉之后就重新启动
-t sec:-t后面加秒数,即几秒后关机的意思

三、重要热键

1、Tab按键:具有命令补全和档案补齐的功能

2、ctrl+c按键:让当前程序停掉

3、ctrl+d按键:代表键盘输入结束(End Of File,EOF End O Finput)的意思;另外可以用来取代exit

4、ctrl+r:历史命令搜索,决定了,Linux系统一定记录了历史命令

(history:查看所有历史命令列表,也可以配合管道(默认记录最新的指令))

 1606  xzx 2025/09/26 17:01:27 clear1607  xzx 2025/09/26 17:01:32 zip --heip1608  xzx 2025/09/26 17:01:54 zip --help1609  xzx 2025/09/26 17:14:05 sudo yum install -y zip unzip1610  xzx 2025/09/26 17:38:09 echo 3.14*2 | bc1611  xzx 2025/09/26 17:52:31 uname -a1612  xzx 2025/09/26 19:58:55 ll1613  xzx 2025/09/26 19:58:59 cd ..1614  xzx 2025/09/26 19:59:09 cd 9_261615  xzx 2025/09/26 20:10:30 ll1616  xzx 2025/09/26 20:10:45 history

四、Linux 常用指令学习小结

到这里,我们已经围绕 Linux 系统中与时间相关的datecal指令,以及文件搜索、文本过滤、压缩打包等高频指令(findgrepzip/unziptar),还有实用工具(bcuname)和核心热键做了详细梳理。这些指令看似零散,却都是 Linux 操作中 “打基础” 的关键 —— 从用date精准控制时间戳,到用find定位隐藏文件,再到用grep快速筛选日志内容,每一个指令的熟练使用,都能帮我们减少重复操作、提升效率。

当然,Linux 的指令体系远不止于此,比如tar的压缩参数还能结合bzip2进一步优化压缩率,find也能搭配exec实现 “查找即操作” 的联动效果。但学习的核心从来不是 “背完所有指令”,而是在理解指令逻辑的基础上,根据实际需求灵活组合。比如遇到日志分析场景,自然会想到cat 日志文件 | grep -n 关键词;需要备份目录时,tar czf 备份包.tar.gz 目标目录也会成为下意识的选择。

如果你在实践中遇到 “权限不足”“指令找不到” 这类问题,不妨回头看看文中的细节 —— 普通用户用find搜索根目录会受限,zip未安装时需通过yum配置,这些小坑其实都是熟悉 Linux 权限与包管理的必经之路。

最后,建议大家把这些指令放进实际场景中多练:比如用cal -j看看今天是今年的第几天,用grep -r在项目文件夹里找某个函数的定义,用tar打包备份自己的代码文件。操作次数多了,自然就能从 “对照文档敲指令” 变成 “随手写出符合需求的命令”。

后续如果遇到新的实用指令或进阶技巧,也会继续和大家分享。希望这篇内容能帮你夯实 Linux 基础,在后续的学习或工作中少走弯路~

http://www.dtcms.com/a/409992.html

相关文章:

  • (七)API 重构的艺术:打造优雅、可维护的 API
  • MAC idea 环境变量设置失效
  • 百度站长收录提交入口深圳设计网站源码
  • 2025Unity超详细《坦克大战3D》项目实战案例(上篇)——UI搭建并使用和数据持久化(附资源和源代码)
  • DenseNet:密集连接
  • 第一次学习Hardhat
  • 腾讯wordpress 建站自适应网站建设哪家便宜
  • 第八章 MyBatis及MyBatis-Plus
  • 5mins了解redis底层数据结源码
  • 华为云学习笔记(四):运维类服务与企业网站上云实践
  • 面向大模型输出的“耐脏” JSON 处理:从清洗到严格化的完整方案
  • 抢先注册网站域名卖掉英文网站建设服务合同
  • Apache、Nginx 和 Tomcat 的区别
  • 解决avue-input-tree组件重置数据不回显/重置失败
  • 苏州网站建设致宇网页设计制作手机网站
  • Kimi-VL:月之暗面开源的视觉语言模型
  • Buck电路项目实战:从原理到实战全解析
  • 如何读懂Mach-O:构建macOS和iOS应用安全的第一道认知防线
  • 远程录制新体验:Bililive-go与cpolar的无缝协作
  • 购物网站制作样例糖果网站建设策划书模板
  • 百度新闻源网站故乡网站开发的意义
  • PortSwigger靶场之Exploiting server-side parameter pollution in a query string通关秘籍
  • OpenLayers地图交互 -- 章节十三:拖拽旋转交互详解
  • 前端常见安全问题都有哪些以及解决方案
  • 算法专题(三)01背包问题理论
  • pycharm 运行不报错,但是调试报错,
  • 原型模式了解
  • 基于hive和mapreduce的地铁数据分析及可视化_hive作为数据库
  • 使用虚幻引擎(UE5)制作开箱爆金币功能
  • 网站在线考试答题系统怎么做泰兴网页定制