❀My学习Linux命令小记录(4)❀

❀My学习Linux命令小记录(4)❀

目录

❀My学习Linux命令小记录(4)❀

16.>>指令

17.date指令

18.du指令

19.df指令

20.xargs指令


16.>>指令

功能说明:将前一个查看指令中的结果追加写入到目标文件中,如果目标文件不存在,则新建。

基本语法:查看指令 >> 目标文件

实例

#cat 1.txt >> 2.txt    #查看1.txt的内容追加到2.txt文件(也就是说把1.txt的内容放到2.txt内容的后面

17.date指令

功能说明显示或设置系统时间与日期

(ps.很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。)

基本语法:date(选项)(参数)

选项:

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号

-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号

-u:显示GMT;

--help:在线帮助;

--version:显示版本信息。

日期格式字符串列表:

%H # 小时,24小时制(00~23)

%I # 小时,12小时制(01~12)

%k # 小时,24小时制(0~23)

%l # 小时,12小时制(1~12)

%M # 分(00~59)

%p # 显示出上午或下午

%r # 时间,12小时制

%s # 从1970年1月1日0点到目前经历的秒数

%S # 秒(00~59)

%T # 时间(24小时制)(hh:mm:ss)

%X # 显示时间的格式(%H时%M分%S秒

%Z # 按字母表排序的时区缩写

%a # 星期名缩写

%A # 星期名全称

%b # 月名缩写

%B # 月名全称

%c # 日期和时间

%d # 按月计的日期(01~31)

%D # 日期(mm/dd/yy)

%h # 和%b选项相同

%j # 一年的第几天(001~366)

%m # 月份(01~12)

%w # 一个星期的第几天(0代表星期天)

%W # 一年的第几个星期(00~53,星期一为第一天)

%x # 显示日期的格式(mm/dd/yy)

%y # 年份的最后两个数字(1999则是99)

%Y # 年份(比如1970、1996等)

%C #   世纪,通常为省略当前年份的后两位数字

%U #  一年中的第几周,以周日为每星期第一天

%e #   按月计的日期,添加空格,等于%_d

实例

#date +"%Y-%m-%d"    #格式化输出:2023-11-27

#date -d "1 day ago" +"%Y-%m-%d"     #输出昨天日期:2023-11-26

加减操作:

#date +%Y%m%d                   # 显示前天年月日

#date -d "+1 day" +%Y%m%d       # 显示前一天的日期

#date -d "-1 day" +%Y%m%d       # 显示后一天的日期

#date -d "-1 month" +%Y%m%d     # 显示上一月的日期

#date -d "+1 month" +%Y%m%d     # 显示下一月的日期

#date -d "-1 year" +%Y%m%d      # 显示前一年的日期

#date -d "+1 year" +%Y%m%d      # 显示下一年的日期

18.du指令

功能说明:显示每个文件和目录的磁盘使用空间

基本语法:du [选项][文件]

选项:

-a或-all 显示目录中个别文件的大小。

-b或-bytes 显示目录或文件大小时,以byte为单位。

-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。

-k或--kilobytes 以KB(1024bytes)为单位输出。

-m或--megabytes 以MB为单位输出。

-s或--summarize 仅显示总计,只列出最后加总的值。

-h或--human-readable 以K,M,G为单位,提高信息的可读性。

-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。

-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。

-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。

-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。

--exclude=<目录或文件> 略过指定的目录或文件。

-D或--dereference-args 显示指定符号链接的源文件大小。

-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。

-l或--count-links 重复计算硬件链接的文件。

实例

#du     #显示目录或者文件所占空间

#du -sh */    #显示目录的大小

19.df指令

功能说明显示磁盘的相关信息

(ps.df命令 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。)

基本语法:df(选项)(参数)

选项:

-a或--all:包含全部的文件系统;

--block-size=<区块大小>:以指定的区块大小来显示区块数目;

-h或--human-readable:以可读性较高的方式来显示信息;

-H或--si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;

-i或--inodes:显示inode的信息;

-k或--kilobytes:指定区块大小为1024字节;

-l或--local:仅显示本地端的文件系统;

-m或--megabytes:指定区块大小为1048576字节;

--no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;

-P或--portability:使用POSIX的输出格式;

--sync:在取得磁盘使用信息前,先执行sync指令;

-t<文件系统类型>或--type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;

-T或--print-type:显示文件系统的类型;

-x<文件系统类型>或--exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;

--help:显示帮助;

--version:显示版本信息。

大小格式:

显示值以 --block-size DF_BLOCK_SIZEBLOCK_SIZE  BLOCKSIZE 环境变量中的第一个可用 SIZE 为单位。 否则,单位默认为 1024 个字节(如果设置 POSIXLY_CORRECT,则为512)。

SIZE是一个整数和可选单位(例如:10M是10 * 1024 * 1024)。 单位是K,M,G,T,P,E,Z,Y(1024的幂)或KB,MB,...(1000的幂)。

实例

#df  #查看系统磁盘设备,默认是KB为单位:

❀My学习Linux命令小记录(4)❀_第1张图片

(输出说明:

Filesystem: 第一列指定文件系统的名称,设备名称。

1K-blocks:默认单位是1KB,第二列指定一个特定的文件系统1K-块1K是1024字节为单位的总内存。用和可用列正在使用中,分别指定的内存量。

Used:已使用的磁盘空间大小,使用列指定使用的内存的百分比。

Available:剩余的磁盘空间大小。

Use%:磁盘使用率。

Mounted on:磁盘挂载的目录,而最后一栏"安装在"指定的文件系统的挂载点。)

#df -h   #可读的格式

我们可以看到输出显示的数字形式的'G'(千兆字节),"M"(兆字节)和"K"(千字节)。

这使输出容易阅读和理解,从而使显示可读的。请注意,第二列的名称也发生了变化,为了使显示可读的"大小"。

❀My学习Linux命令小记录(4)❀_第2张图片

#df -i   #显示inode信息而非块使用量

❀My学习Linux命令小记录(4)❀_第3张图片

#df --total   #显示所有的信息

❀My学习Linux命令小记录(4)❀_第4张图片

20.xargs指令

功能说明:给其他命令传递参数的一个过滤器

(ps.xargs 命令 是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准输入数据转换成命令行参数,xargs 能够处理管道或者 stdin 并将其转换成特定命令的命令参数。xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs 的默认命令是 echo,空格是默认定界符。这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。xargs 是构建单行命令的重要组件之一。)

实例:

xargs 用作替换工具,读取输入数据重新格式化后输出。

定义一个测试文件,内有多行文本数据

# cat test.txt

a b c d e f g

h i j k l m n

o p q

r s t

u v w x y z

# cat test.txt | xargs   #多行输入单行输出

a b c d e f g h i j k l m n o p q r s t u v w x y z

#cat test.txt | xargs -n3

a b c

d e f

g h i

j k l

m n o

p q r

s t u

v w x

y z

# echo nameXnameXnameXname | xargs -d X   #使用-d自定义一个定界符

name name name name

#echo "nameXnameXnameXname" | xargs -dX -n2  #结合 -n 选项 使用

name name

name name

#find . -type f -name "*.log" -print0 | xargs -0 rm -f  #用 rm删除太多的文件时候,可能得到一个错误信息:/bin/rm Argument list too long xargs 去避免这个问题

❀My学习Linux命令小记录(4)❀over~

你可能感兴趣的:(Linux学习笔记:),服务器,linux,运维,学习)