Linux的基本指令(3)

01. date指令

date 指定格式显示时间: date +%Y:%m:%d

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

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%H : 小时 (00..23)
%M : 分钟 (00..59)
%S : (00..61)
%X : 相当于 %H:%M:%S
%d : (01..31)
%m : 月份 (01..12)
%Y : 完整年份 (0000..9999)
%F : 相当于 %Y-%m-%d

a:直接date

解释:直接date 会显示当前的年月日以及时分秒 

b:date的使用

解释:可知,其中的分隔符可以自己更换(:/ - .....都可以),不要分隔符,但留空格,是错的

c:date不要分隔符 

解释:不要分隔符,只能挨在一起才行,但是打印出来的效果不易识别时间

d:date +%s

解释:会打印出时间戳 

e:将时间戳转换成时间

解释:date -d @时间戳,即可将时间戳转换成时间,但显示的时间不太符合我们平时的时间,第二个图会更清晰。

f:时差

解释:时间戳是指‌格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数 ,由于时差,所以北京时间晚8h

02. cal指令

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

命令格式 cal [ 参数 ][ 月份 ][ 年份 ]
功能 : 用于查看日历等时间信息,如只有一个参数,则表示年份 (1-9999) ,如有两个参数,则表示月份和年份
常用选项
-3  显示系统前一个月,当前月,下一个月的月历
-j   显示在当年中的第几天(一年日期按天算,从 1 1 号算起,默认显示当前月在一年中的天数)
-y   显示当前年份的日历

a:直接cal

解释:直接 cal打印当月的日历,并且标注了当前日期,可以看出是一份西式日历,因为周日在前

b:cal -y  年

解释: cal -y  年 直接打印出2024这一年的日历

c:cal -3

解释: cal -3显示显示系统前一个月,当前月,下一个月的月历

03. find指令

Linux find 命令在目录结构中搜索文件,并执行指定的操作。
Linux find 命令提供了相当多的查找条件,功能很强大。由于 find 具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
即使系统中含有网络文件系统 ( NFS) find 命令在该文件系统中同样有效,只你具有相应的权限。
在运行一个非常消耗资源的 find 命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间( 这里是指 30G 字节以上的文件系统 )
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name   按照文件名查找文件。

a:指定名字去查

解释:指定名字(file.txt)去查,这只是一个工作量特别小的一个查找,如果查找一个很多的东西,find第一次会很慢(多叉树的遍历),后面再查相同的内容,就会很快。find第一次查找的时候,能看到其查找的过程,即在屏幕在缓慢的显示其查找到的内容,然后在后面再次查找的时候,就会快多

b:指定路径去查

解释:指定在 /usr/bin 这个路径下 去查ls,查系统的指令,直接which会更简单

c:指定部分名字去查

 解释:去查找file.开头的东西,后面是什么都会被查到

04. whereis指令

whereis

whereis 命令用于定位二进制文件、源代码文件和手册页等相关文件。

它搜索的是预编译好的路径列表,这些路径通常是系统标准安装路径。

whereis 可以查找多个类型的文件,比如二进制文件、源代码文件和手册页。

解释:这表示 ls 命令的二进制文件位于 /usr/bin/ls,其手册页位于 /usr/share/man/man1/ls.1.gz

05. grep指令

语法: grep [ 选项 ] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ' 搜寻字符串 ' 内容的那一行
nano 一个file.txt,在里面写以下内容

a:grep 

 解释:能看出来grep是对于大小写敏感的

b:grep +空字符

解释:单引号中不输入东西,即查找空字符的行,全部都会被搜寻到  

 

c:grep -i 

解释: -i的 i 是 ignore的缩写,可以搜寻的字符串的大小写,a 和 A 搜寻到的东西一样

d:grep -i + 空字符

解释: 单引号中不输入东西,即查找空字符的行,全部都会被搜寻到 

 e:grep -n 

解释: -n :顺便输出行号,

f:grep -n + 空字符

解释:单引号中不输入东西,即查找空字符的行,全部都会被搜寻到 

 g:grep -in

解释:可以组合使用

 h:grep -in + 空字符

解释:单引号中不输入东西,即查找空字符的行,全部都会被搜寻到

i:grep -v

解释:-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

总结:三种都可以自由组合使用 

06. sort指令

语法: sort  文件
功能: 把文件中的行按照ASCLL码值来排列,这意味着,如果两行的首字符相同, sort 会继续比较下一个字符,直到找到可以决定顺序的不同字符为止。
-r 逆向排列

a:sort

解释:sort把文件里面的内容按照ASCLL码值来进行排列

b:sort -r 

解释:逆向排列

07. uniq指令

语法: sort  [选项] 文件
功能: 默认情况下, uniq 只会输出连续的重复行中的第一行, 但是只会去重相邻的行
-u:仅输出文件中不重复的行, 但是只会对相邻的行进行判断
-d:显示重复行, 但是只会对相邻的行进行判断
-c:在行的前面显示改行出现的次数

a:uniq

解释:只是unip 只会去重相邻的 

b:uniq -c

解释:只是unip 只会去重相邻的,-c只是在前面加上了改行重复的次数  

 

c:uniq -u

解释: 仅输出文件中不重复的行,但是也是仅仅是对相邻的行的判断,比如1-3行都是aaaaa,那

-u 认为这三行都重复了,不再输出,而第4行的AAAAA 和 第7行和第9行的AAAAA,都会被认为是不重复行

d:uniq -d

解释: 发现-d显示重复行,但是只会对相邻的行进行判断,AAAAA虽然有几行,但是不相邻,所以认为不重复,所以不显示

总结:要和sort搭配使用,才能达到有效的去重

解释:因为uniq所有的功能都是对相邻的行进行的,但是一样的行不一定相邻,那我们就用sort让该相邻的行实现相邻就行

08. sort+uniq的搭配

a:sort + uniq 

解释:用 | 实现搭配即可,其余的选项都可以搭配使用

b:sort + uniq -c

解释:有效去重后,再前面显示了每行出现的次数 

09. grep+sort+uniq+wc的搭配

a:sort + uniq + wc

wc -l 命令用于计算给定文件中的行数。这里的 -l 选项代表 “lines”,告诉 wc 命令你想要知道输入文本中的行数。 

解释:对file.txt做有效去重后,统计去重后的行数。

b:grep + sort + uniq + wc

解释:

  • cat file.txt 读取 file.txt 文件的内容。
  • grep 'a' 筛选出包含字母 “a” 的所有行。
  • sort 将这些行按照字典顺序排序。
  • uniq 删除排序后连续的重复行。
  • wc -l 计算并输出最终结果中的行数,即文件 file.txt 中不重复的、包含字母 “a” 的行的数量。

最终,这条命令会输出一个数字,表示 file.txt 中不重复的、包含字母 “a” 的行的总数

10.  .zip/unzip指令

语法: zip 压缩文件 .zip 目录或文件
功能: 将目录或文件压缩成 zip 格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理

a:不可对目录仅 .zip

解释:对目录应该 -r 

b:对目录应该-r 

解释:对目录应该-r 

c:指定目录解压

 解释:指定将110.zip解压到dir1这个买目录,不需要再mv

d:在当前路径下解压注意同名的处理

解释:

这个提示说明在解压缩过程中,unzip 命令遇到了一个问题:存档 110.zip 中包含的文件 110/file.txt 已经存在于当前目录中。unzip 询问用户如何处理这个冲突:

  • [y]es:如果用户输入 y 或按回车键,则 unzip 将替换现有的 file.txt 文件。
  • [n]o:如果用户输入 n,则 unzip 将跳过这个文件,不替换现有的 file.txt
  • [A]ll:如果用户输入 A,则 unzip 将自动替换所有冲突的文件,而不再提示。
  • [N]one:如果用户输入 N,则 unzip 将自动跳过所有冲突的文件,而不再提示。
  • [r]ename:如果用户输入 r,则 unzip 会自动将新文件重命名(通常是在文件名后添加一个数字),以避免覆盖现有文件。

用户需要根据具体情况选择一个选项,然后按回车键继续解压缩过程。

11.  tar指令

语法: tar [选项] 压缩文件.tgz 目录或文件

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

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

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

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

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

a:-czf:打包压缩命名

b:-xzf:解压

c:-cvzf:打包压缩命并且看到压缩过程

d:-xvzf:解压并且能看到解压的过程

e:指定路径解压

和.zip的操作一样,不过-d换成了-C,不再演示 

12.  uname指令

语法 uname [ 选项
功能 uname 用来获取电脑和操作系统的相关信息。
补充说明 uname 可显示 linux 主机所用的操作系统的版本、硬件的名称等基本信息。
常用选项:
-a –all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

13. Linux和windows的互通

a:windows到Linux

直接拖拽即可

将桌面上的一个txt拖拽到xshell中

b:Linux到windows(sz指令)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值