Linux命令:8、其他命令

ln、diff、date、cal、grep、wc、ps、watch、at、crontab
1、ln [参数][源文件/目录][目标文件/目录] ---- link,为某个文件在不同的位置建立链接
硬链接—一个文件可以有多个名称,在同一个文件系统中
软链接—一个特殊文件,指向源文件位置,可跨越不同的文件系统
ln -s ori_file dest_file 软链接,在选定位置上生成源文件的镜像,不占用磁盘空间(可操作目录)
ln ori_file dest_file 硬链接,在选定位置上生成和源文件一样的文件(不可操作目录)
-b 删除,-f 强制,-n 把符号链接视为一般目录,-s 软(符号)链接,-v显示详细信息
ln -s log.log link.log 建立软链接
ln log.log hard.log 建立硬链接
rm -rf log.log 删除源文件
touch log.log 根据链接重建源文件
Linux命令:8、其他命令
1.源文件被删除后,并没有影响硬链接文件;软链接在centos变成红色,提示源文件已不存在。
2.重建源文件后,软链接恢复颜色, 硬链接没有收到影响 说明已失效。

2、diff [参数][文件/目录][文件/目录] ---- 比较文件/目录内容
-b 不检查空格,-B不检查空白行,-i 不检查大小写
(略过,一般vimdiff file1 file2 或者 git 下diff 使用较多)

3、date [参数]…[格式] ---- 显示/设定 系统的日期与时间
date 显示当前时间

4、cal [参数][月份][年份] ---- 查看日历
cal 显示当前月份日历

5、grep [option] pattern file ---- 强大的文本搜索工具
    global regular expression print,在一个或多个文件中搜索字符串模板,如果模板含空格则必须用“”,模板后的所有字符串被看作文件名,搜索结果显示在标准输出。
    grep 可用于shell脚本,模板搜索成功grep返回0、不成功返回1、文件不存在返回2
-r 递归搜索目录,-i 忽略大小写,-f 指定模板文件,-n 显示行号;
grep规则表达式同正则
ps -ef | grep svn 查找指定进程
ps -ef | grep -c svn 查找指定进程个数
cat test.txt | grep -f test2.txt 从文件test.txt中读取模板,在test2.txt中搜索
grep “linux” test.txt 从文件中查找 # 可写多个文件
grep -r “linux” test_dir 从目录中查找
ps -aux | grep ssh | grep -v “grep” 不显示grep本身进程

6、wc [选项][文件] ---- word count 统计文件的字节数/字数/行数
-c 字节数,-w 字数,-l 行数,-L 打印最长行的长度
wc -l test.txt 行数 # 显示 7 test.txt
cat test.txt | wc -l # 显示 7,无文件名(管道符 | ,在shell脚本常用)

7、ps [option] ---- 显示当前进程的状态
Process Status 列出执行ps命令时的那些进程,若要动态显示可用top命令。 kill 命令用于杀死进程。
-A/e 显示所有进程,f 显示程序间的关系,-aux 显示所有包含其他使用者的进程
ps -ef 显示所有进程信息,连同命令行
ps -ef | grep ssh 组合用法,查找特定进程
ps aux 显示目前所有正在内存中的程序
ps -aux | more 分页查看

8、watch [参数][命令] ---- 将命令的结果输出到标准输出,多用于周期性命令 / 定时执行命令
watch -n 1 -d ‘pstree | grep http’ 每隔1秒 高亮显示http链接数的变化情况

9、at [参数][时间] ---- 在一个指定时间执行一个任务
只能执行一次,且需开启atd进程 ps -ef | grep atd,开启用 /etc/init.d/atd start or restart
(暂略过)

10、crontab [选项][文件] ---- 执行「循环运行的例行行任务」
crontab [-u user ] file
crontab [-u user ] [-e | -l | -r ]
用crontab命令,可以在固定的时间间隔执行指定的系统指令 或shell script脚本。时间间隔单位可以是分、时、日、月、周及组合。这个命令适合周期性的日志分析、数据备份等工作。
(略过)