sort命令和crontab命令

一、sort,以行为单位对多行数据进行排序

常用的参数及作用

参数作用
-n数值排序
-r降序
-t字段分隔符
-k以哪个字段为关键字进行排序
-u排序后相同的行只显示一次
-f排序时忽略字符大小写

sort练习:

(sort原理:sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。)
1、创建一个文件b1,在文件b1里面输入任意数值(打乱输入),利用参数-u来进行升序排序。
在这里插入图片描述
2、对刚才创建的文件b1进行降序排序(-r)
直接-r之后的排序
在这里插入图片描述
注意:在图中8比67小但排在了前面,出现这种情况是由于排序程序将这些数字按字符来排序了,排序程序会先比较8和6,显然6小,所以就将8放在67前面。这也是sort的一贯作风。

所以要改变这种现状,就要使用-n选项,来告诉sort,“要以数值来排序”!

在这里插入图片描述
3、-u 在排序后输出时去掉重复行
eg:创建一个文件b2 在里面输入内容,查看并输出
在这里插入图片描述
4、-f 忽略大小写
在这里插入图片描述
5、-k 和 -t 的用法
eg:创建一个文件b3,在b3里面输入如下内容
在这里插入图片描述
按照第二列的数值来进行排序
在这里插入图片描述
6、由于sort默认是把结果输出到标准输出,需要用重定向才能将结果写入文件另一个文件中。(eg:sort -f b2 > b4)
在这里插入图片描述
但是要想将排序后的结果输入到源文件中,则需要 需要用-o 参数 把排序结果输出到原文件中
在这里插入图片描述
7 其他的sort常用选项

-c会检查文件是否已排好序,如果乱序,则输出第一个乱序的行的相关信息,最后返回1

-C会检查文件是否已排好序,如果乱序,不输出内容,仅返回1

-M会以月份来排序,比如JAN小于FEB等等

-b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较。

二、crontab 命令

  • Linux系统下一个自动执行指定任务的程序(计划任务),使用Crontab命令来添加任务
  • crontab 配置文件(more /etc/crontab)
    在这里插入图片描述
  • 常用参数
参数描述
-u user用来设置某个用户的crontab服务
-l显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容
-e编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件
-i在删除用户的crontab文件时给确认提示
-r从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件

crontab练习:
1每1分钟执行一次对/etc目录的备份,备份至/backup目录中,保存文件名格式为bak_etc_2018-01-01
1.1、创建脚本文件(yy.sh)并编辑
在这里插入图片描述
1.2、给 yy.sh 脚本文件可执行权限
(chmod u+x yy.sh
1.3、执行脚本文件并查看
在这里插入图片描述
1.4、设置crontab (crontab -e)
在这里插入图片描述
1.5、再查看目录/backup 对比一下时间
在这里插入图片描述
在这里插入图片描述
2. 每1分钟取当前系统/proc/meminfo文件中的所有以S开头的信息至/backup/memory文件中
2.1创建脚本文件(tt.sh)并编辑
在这里插入图片描述
2.2 给 tt.sh 脚本文件可执行权限
(chmod u+x tt.sh
2.3执行脚本文件并查看
在这里插入图片描述
2.4设置crontab (crontab -e)
在这里插入图片描述
2.5再查看文件/backup/memory 对比一下
在这里插入图片描述
文件/backup/memory 里的内容随着时间不断增加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值