tailf 一个实时监听文件或日志的强大的命令
命令格式1$ tailf [option] file
命令描述 tailf 将会打印出一个文件的最后10行,等待并持续输出此文件的增长,它和tail -f相似,不同之处是当文件没有增长时,是不访问此文件的;但这会有一个副作用:不会更新文件的访问时间。当没有发生日志活动时,文件系统的冲洗(flush)不会定期发生。 tailf 对于打印日志不频繁,而又在使用笔记本电脑时是非常有用的,这样用户就能降低磁盘转速从而增加笔记本续航。
命令参数
参数
描述
-n,–lines=N,-N
输出最后N行,而不是默认的最后10行
命令实例例一:展示一个文件的最后5行并监听文件的新行(新增加的内容)
123$ tailf -n 5 myfile.txt$ tailf -5 myfile.txt$ tailf --lines=5 myfile.txt
注:这是一个实时监听文件或日志的强大的命令
例二:实时新增日志内容,并通过管道过滤出自己想要的内容
12## 实时监听ip地址为24.10.160.10的访问日志$ tai ...
前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。
crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。
Linux下的任务调度分为两类,系统任务调度和用户任务调度。
系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。
/etc/crontab文件包括下面几行:
1234567891011121314## /et ...
在windows系统中,windows提供了计划任务这一功能,在控制面板 -> 性能与维护 -> 任务计划, 它的功能就是安排自动运行的任务。 通过’添加任务计划’的一步步引导,则可建立一个定时执行的任务。
在linux系统中你可能已经发现了为什么系统常常会自动的进行一些任务?这些任务到底是谁在支配他们工作的?在linux系统如果你想要让自己设计的备份程序可以自动在某个时间点开始在系统底下运行,而不需要手动来启动它,又该如何处置呢? 这些例行的工作可能又分为一次性定时工作与循环定时工作,在系统内又是哪些服务在负责? 还有,如果你想要每年在老婆的生日前一天就发出一封信件提醒自己不要忘记,linux系统下该怎么做呢?
今天我们主要学习一下一次性定时计划任务的at命令的用法!
命令格式1$ at [参数] [时间]
命令功能 在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程(ps -ef | grep atd查看, 开启用/etc/init.d/atd start or restart; 开机即启动则需要运行 ch ...
watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行。在Linux下,watch是周期性的执行下个程序,并全屏显示执行结果。你可以拿他来监测你想要的一切命令的结果变化,比如 tail 一个 log 文件,ls 监测某个文件的大小变化,看你的想象力了!
命令格式1$ watch[参数][命令]
命令功能 可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令
命令参数
参数
描述
-n或–interval
watch缺省每2秒运行一下程序,可以用-n或-interval来指定间隔的时间
-d或–differences
watch 会高亮显示变化的区域
-d=cumulative
会把变动过的地方(不管最近的那次有没有变动)都高亮显示出来
-t 或-no-title
会关闭watch命令在顶部的时间间隔,命令,当前时间的输出
-h, –help
查看帮助文档
使用实例例一:每隔一秒高亮显示网络链接数的变化情况
1 ...
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。
ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。
kill 命令用于杀死进程。linux上进程有5种状态:
运行(正在运行或在运行队列中等待)
中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
停止(进程收到SIGSTOP, S ...
Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
命令格式1$ wc [选项]文件...
命令功能 统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。
命令参数
参数
描述
-c
统计字节数
-l
统计行数
-m
统计字符数。这个标志不能与 -c 标志一起使用
-w
统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串
-L
打印最长行的长度
-help
显示帮助信息
–version
显示版本信息
使用实例例一:查看文件的字节数、字数、行数
123$ wc 1.txt 5 19 105 1.txt 行数 单词数 字节数 文件名
例二:用wc命令怎么做到只打印统计数字不打印文件名
12345$ wc -l 1.txt5 1.txt ## 5行$ cat 1.txt | wc -l5 ## 值输出数字
例三:用来统计当前目录下的文件和 ...
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。
grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2。我们利用这些返回值就可进行一些自动化的文本处理工作。
命令格式1$ grep [option] pattern file
命令功能 用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。
命令参数
参数
描述
-a –text
不要忽略二进制的数据
-A<显示行数> –after-context=<显示行数>
除了显示符合范本 ...
cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
命令格式1$ cal [参数][月份][年份]
命令功能用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
命令参数
参数
描述
-1
显示一个月的月历
-3
显示系统前一个月,当前月,下一个月的月历
-s
显示星期天为一个星期的第一天,默认的格式
-m
显示星期一为一个星期的第一天
-j
显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y
显示当前年份的日历
使用实例例一:显示当前月份日历
1$ cal
例二:显示指定月份的日历
1$ cal 6 2016
例三:显示2016年的日历
12$ cal -y 2016$ cal 2016
例四:显示自1月1日的天数
1$ cal -j
例五:星期一显示在第一列
1$ cal -m
在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便。
命令格式1$ date [参数]... [+格式]
命令功能 date 可以用来显示或设定系统的日期与时间。
命令参数命令参数
参数
描述
%H
小时(以00-23来表示)
%I
小时(以01-12来表示)
%K
小时(以0-23来表示)
%l
小时(以0-12来表示)
%M
分钟(以00-59来表示)
%P
AM或PM
%r
时间(含时分秒,小时以12小时AM/PM来表示)
%s
总秒数。起算时间为1970-01-01 00:00:00 UTC
%S
秒(以本地的惯用法来表示)
%T
时间(含时分秒,小时以24小时制来表示)
%X
时间(以本地的惯用法来表示)
%Z
市区
%a
星期的缩写
%A
星期的完整名称
%b
月份英文名的缩写
%B
月份的完整英文名称
%c
日期与时间。只输入date指令也会显示同样的结果
%d
...
diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方。diff在命令行中打印每一个行的改动。最新版本的diff还支持二进制文件。diff程序的输出被称为补丁 (patch),因为Linux系统中还有一个patch程序,可以根据diff的输出将a.c的文件内容更新为b.c。diff是svn、cvs、git等版本控制工具不可或缺的一部分。
命令格式1$ diff [参数] [文件1或目录1] [文件2或目录2]
命令功能 diff命令能比较单个文件或者目录内容。如果指定比较的是文件,则只有当输入为文本文件时才有效。以逐行的方式,比较文本文件的异同处。如果指定比较的是目录的的时候,diff 命令会比较两个目录下名字相同的文本文件。列出不同的二进制文件、公共子目录和只在一个目录出现的文件。
命令参数
参数
描述
-
指定要显示多少行的文本。此参数必须与-c或-u参数一并使用
-a或–text
diff预设只会逐行比较文本文件
-b或–ignore-space-change
不检查空格字符的不同
-B或–ig ...

