Linux——高效玩转命令行
【0】统计文件or压缩文件的行数
zcat file.gz | sed -n '$=' #迅速。直接打印出多少行。-n 取消默认的输出,使用安静(silent)模式 '$=' 不知道是什么意思,(知道的高手,请留言噢,qqq)。
zcat file.gz | awk ‘END{print NR}’ # 迅速。解压打开文件,输出文件最后一行行号
zcat file.gz | grep -n "" |awk -F : 'END{print $1}' #迅速。解压打开文件,文件每行前标出行号并用冒号连接,以冒号为分隔符输出最后一行的第一列
zcat file.gz | wc -l #统计大文件实在是太慢了
期待高效的方法。。。。。。
PS:
zcat file.gz <=> gzip -dc file.gz #压缩文件不能直接进行统计 ;
参考[0]中后半部分,利用上边的快速统计文件行数命令,写了两个shell脚本去统计目录下指定后缀的文件行数。
【1】批量快速删除文件或目录
1-1、快速删除大文件夹(注意目录后的结束符‘/’)(对于含有海量文件的目录,不能直接rm -rf删除,这样效率很慢:)
rsync -a --delete blank/ test/ 使用空文件夹 blank/ 覆盖原文件夹 test/
1-2、查找并删除文件
find ./ -type f -name "*.log" -mmin +120 -delete 删除当前目录下120min前的所有.log结尾文件
find ./ -type f -name "*.log"-mtime +300 -delete 删除当前目录下300天前的所有.log结尾文件
这种方式要比下边语句快2-3倍,并且当目录中文件非常多时不会出现列表过长无法删除的异常。
find ./ -name "*.log" -mmin +120 | xargs rm -f
或
find ./ -name "*.log" -mmin +120 -exec rm {} -f # -exec 表示后面执行命令 "{}" -f表示不需要确认 <=>
find ./ -name "*.log" -mmin +120 -exec rm -f "{}" \; #最后的分号不可少
1-3、
delete.sh:
for i in `ls -d path/shell/shell_pipe/step*qsub` # ls列出匹配上的目录 必须用-d 否则ls会把目录下的文件也都列出来
do
rm -r $i
done
for i in `ls path/*log`
do
rm $i
done
eg:快速删除目标文件中自己的qsub目录中的运行oe文件。
/share/app/msort/bin/msort -k rn5 file | grep 'name'|grep 'qsub'|awk '{print $8}'| while read ID #第八列是以qsub结尾的目录全路径,一个个给到$ID
do
for i in `ls $ID/*\.[eo]*` #匹配filename.e.12345 filename.o.12345 文件
do
#echo $i
rm $i
done
for i in `ls $ID/*\.log` #匹配filename.log 文件
do
#echo $i
rm $i
done
done
参考:
[0]http://www.jb51.net/article/61943.htm
[1]https://blog.csdn.net/ydyang1126/article/details/72841308 https://blog.csdn.net/shangzwz/article/details/10304469
Linux——高效玩转命令行的更多相关文章
- 最NB的发现 LINUX 下玩teamviewer 命令行设置密码
cd /opt/teamviewer/tv_bin/ [root@666 tv_bin]# ls desktop script teamviewerd TVGuiSlave.32 xdg-utils ...
- 手把手教你打造高效的 Kubernetes 命令行终端
Kubernetes 作为云原生时代的操作系统,熟悉和使用它是每名用户的必备技能.本文将介绍一些提高操作 Kubernetes 效率的技巧以及如何打造一个高效的 Kubernetes 命令行终端的方法 ...
- 【No.2】监控Linux性能25个命令行工具
接着上一篇博文继续 [No.1]监控Linux性能25个命令行工具 10:mpstat -- 显示每个CPU的占用情况 该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一 ...
- 【No.1】监控Linux性能25个命令行工具
如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?通过以下命令或者工具可以快速定位 top vmstat lsof tcpdump netsta ...
- linux的基本的命令行操作
linux的基本的命令行操作 第一步前登陆你的服务器 //创建文件夹的方法 mkdir 文件名 //进入指定文件夹 cd 文件名 //查看文件夹下的内容 ls or ll // 查看当前的路径 pwd ...
- Python3.x:Linux下退出python命令行
Python3.x:Linux下退出python命令行 退出命令: quit() #或者 exit() #或者 Ctrl-D
- 第4章 ZK基本特性与基于Linux的ZK客户端命令行学习
第4章 ZK基本特性与基于Linux的ZK客户端命令行学习 4-1 zookeeper常用命令行操作 4-2 session的基本原理与create命令的使用
- Linux 性能监控之命令行工具
引言 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的 ...
- Linux系统——28个命令行下的工具
Unix/Linux下的28个命令行下的工具 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具(原文链接),有一些是大家熟悉的,有一些是非常有用的,有一些是不 ...
随机推荐
- 如何去掉wordpress后台notice提示窗口
我们在安装完wordpress插件后,有些会在后台页面弹出一个提示你去收费升级pro版,如下图所示,这无可厚非,基础功能可以免费用,如果要用高级功能可以升级.有些朋友觉得基础功能够用了,又不想看到弹出 ...
- 给opencart产品页添加额外信息
有时我们在开发opencart时需要给产品页添加一些额外的信息,第一种聪明的方法可以修改并调用已有字段,详细可以参考opencart3产品页调用upc/数量等信息:如果您的开发能力不错的话可以用第二种 ...
- 利用dladdr来获得so自身的路径
#include <dlfcn.h> //定义该函数为了dladdr获取符号信息 void fun1() { } Dl_info info; //dladdr获取某个地址的符号信息 int ...
- php中pcntl_fork详解
pcntl_fork()函数是php-pcntl模块中用于创建进程的函数.(不支持windows) 至于php_pcntl扩展如何安装开启这里就不介绍了,只分析pcntl_fork()这个函数本身. ...
- 19.C# 泛型
1.泛型的概念 所谓泛型,即通过参数化类型来实现在同一份代码上操作多种数据类型.泛型编程是一种编程范式,它利用“参数化类型”将类型抽象化,从而实现更为灵活的复用. 2. .net提供的泛型 2.1可空 ...
- Vue.js数据响应基础原理
许多前端JavaScript框架(例如Angular,React和Vue)都有自己的数据相应引擎.通过了解相应性及其工作原理,您可以提高开发技能并更有效地使用JavaScript框架.在视频和下面的文 ...
- 66.ajax--ajax请求多个url解决办法
ajax请求多个url解决办法 以下四种方法是我找的,我也进行实践过. 测试中有四个请求接口,原本需要13S,用了第三种方法缩减到7S,但是仍不能达到2S以内. 所以仅供参考,待我找到能缩减到2S以内 ...
- Leetcode: Encode and Decode TinyURL
Note: This is a companion problem to the System Design problem: Design TinyURL. TinyURL is a URL sho ...
- keil在线烧录突然提示 No target connected #
keil在线烧录突然提示 No target connected 运行环境 IDE:keil uvsion5 微处理器:STM32F0xx 系列 烧录器:ST-LINK/V2 问题描述 烧录新程序并进 ...
- vue配置手机通过IP访问电脑开发环境
vue配置手机通过IP访问电脑开发环境config/index.js// Various Dev Server settings host: '0.0.0.0', // can be overwrit ...