高效率的Shell
1. 批量将Excel转为CSV文件
XLSX2CSV: https://github.com/dilshod/xlsx2csv
sudo easy_install xlsx2csv #安装Xlsx2CSV
find ./ -name "*.xls*" -print | xargs -t -I {} xlsx2csv -a {} {}_output #查找并输出
2. Nginx日志分析
筛选原始日志:
sed -n '/30\/Mar\/2015/,/5\/Apr\/2015/ p' beta.xxx.com.access.log > 0330-0405.log
//筛选refer关键词并排序
awk '($11 ~ /atsm\/.*\//)' 17-23.log | awk '{print $11}' | sort | uniq -c | sort -r >atsm-17-23.log
//根据时间进行分割
sed -n '/21\/Jun\/2016:17/,/21\/Jun\/2016:23/ p' access.log > 17-23.log
特定页面分析并排队IP、蜘蛛访问:
cat 0330-0405.log | grep 'GET /zhuanti/play/Recruitment' | grep -Ev '21x.142.111.9x'| grep -Ev 'bot'|grep -Ev 'spider'|grep -Ev '22x.171.80.4x'| grep -Ev '5x.50.44.8x' |wc -l
3. 批量解压
find ./ -type f -name "*.gz" -exec gunzip -r {} \;
find ./ -type f -name "*.tar.gz" -exec tar zxvf {} \;
4.按顺序合并
for ((i=6;i<=8;i++))do echo access.log-2015040$i;done | xargs cat {} >> mynew.txt
5. 导入Nginx日志到Piwik系统
python /Applications/AMPPS/www/piwik/misc/log-analytics/import_logs.py --debug --show-progress --login=cbcye --password=haha --idsite=2 --dry-run --recorders=4 --enable-http-errors --enable-http-redirects --enable-static --enable-bots --url=http://localhost/piwik/ ~/Downloads/07.log
6. 创建相同子目录不包括文件
ls /work/code/game/games -print |xargs -t -I {} mkdir /work/redirect/game_to_product/{}
7. 拷贝文件到所有目录中
ls | awk '{print $NF}' | xargs -t -I {} cp /work/redirect/to_other_index.php {}/index.php
8. 添加内容到首行,会生成一个以old为后缀的文件复本
sed -iold '1i\'$'\n''姓名,手机号'$'\n' test.csv
9. 按行记录拆分文件,-a指定生成文件名序列的长度,默认为2
split -a 3 -l 999 300w.csv out_
10.查找文件并添加首行的文件中
find ./ -name 'out_*' | xargs -t -I {} sed -i _old '1i\'$'\n''姓名,手机号'$'\n' {}
11.批量改名
find ./ -name "icon copy*.jpg" | sed 's/icon copy.jpg$//g'|xargs -t -I {} mv "{}icon copy.jpg" {}logo.jpg
12.批量删除
find ./ -name "icon copy*.jpg" -exec rm -rf {}\;
13. 统计文件夹下所有文件夹个数
ls -l |grep "^d"|wc -l
14. 删除文件大小小于10k的文件
find ./ -name '*.html' -size -10kc |xargs -t -I {} rm -rf {}
15.批量修改文件夹名称
find ./ -name "*.bin" -exec rename "s/.bin/.json/" {} \;
高效率的Shell的更多相关文章
- (转载)linux中shell变量
(转载)http://blog.csdn.net/zahuopuboss/article/details/8633891 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存 ...
- Linux命令行和Shell高效率使用方法
Ctrl+R快速搜索history Ctrl+P显示上一条命令 快速执行一条history命令:!!/!-number ======================================== ...
- node.js 使用 UglifyJS2 高效率压缩 javascript 文件
UglifyJS2 这个工具使用很长时间了,但之前都是在 gulp 自动构建 时用到了 UglifyJS 算法进行压缩. 最近玩了一下 UglifyJS2 ,做了一个 在线压缩javascript工具 ...
- Vim编辑器与Shell命令脚本
章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...
- Linux和Shell回炉复习系列文章总目录
本页内容都是本人回炉Linux时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接右上角叉 ...
- 命令行界面 (CLI)、终端 (Terminal)、Shell、TTY的区别
虽然这个话题已是老生常谈,搜索一下应该也能找到大把的相关文章.不过难得提到了这方面,就趁此机会把我的理解写下来,一来看看我是不是真正理解了,二来看看我能不能把它们之间的区别讲得更加简明易懂. 0. 太 ...
- 第4章 Vim编辑器与Shell命令脚本
章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...
- shell实现洗牌随机
洗牌问题: 洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样 高效率的实现乱序排列? 关于洗牌问题,其实已经有了一个很好的shell解法,这里另外给三个基于AWK的方法, ...
- Android之高效率截图
本文来自网易云社区 作者:孙圣翔 在一张Android手机上截图有好多办法,为了能够高效率的截图,我几乎把所有的方法都尝试了一般.走了好多路,也遇到了好多的问题. 只是想记录下这其中的不容易. 下面所 ...
随机推荐
- C# WinForm dataGridView 技巧小结
1.不显示第一个空白列RowHeaderVisible属性设置为false 2.点击cell选取整行SelectinModel属性FullRowSelectRowSelectinModel属性设置或用 ...
- yum 安装时错误 Errno 14 Couldn't resolve host 解决办法(转)
在安装mlocate的时候发现一直报错,错误内容大致如下 Downloading Packages:http://mirrors.163.com/centos/6.5/os/i386/Packages ...
- Web APi之认证
Web APi之认证(Authentication)两种实现方式后续[三](十五) 前言 之前一直在找工作中,过程也是令人着实的心塞,最后还是稳定了下来,博客也停止更新快一个月了,学如逆水行舟,不 ...
- 在高德地图应用api,和api展出的标记小的应用程序
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- 猪和python(pig and python)
Python 真是无处不在国内. pig 0.9后python作为嵌入式语音,采用Jython解释器使用python2.5特征,此接口是最上层org.apache.pig.scripting.Pig首 ...
- 设计与实现简单而经常使用的权限系统(四):无需维护level,递归构建树
第三篇中.我们通过维护节点的深度level,通过迭代全部的节点,仅仅须要一次,就构造了树. 本篇.换一种方式. 优点是:不维护节点的深度level,添加和改动节点时,也不用维护.递归实现,代码比較清 ...
- JAVA —— console输入输出
import java.io.*; public class ConsoleIOTest { public static void main(String[] args) { BufferedRead ...
- JPA实体继承映射
注意:据说,在本文所指的实体是@Entity注解的类. JPA在对象 - 关系映射通常情况下一个实体对应表,不管是什么这两个实体之间的关系.假设两个实体之间的继承关系.那么它是如何映射? JPA实体支 ...
- SharePoint 2013 中将 HTML文件转换为母版页
原文:SharePoint 2013 中将 HTML文件转换为母版页 SharePoint 2013提供了很多新功能,下面我们看看将Html页面,转换为母版页的功能.这个功能更加方便设计人员设计母版页 ...
- wikioi 1034 家 实时动态的网络流量(费用流)
因为随着时间的推移.网络侧变得,因此,常见的网络流量也解决不了这个问题,.如果T毕竟运输时间. 为此.我们可以基于时间分割点,所有的点将被分割为T点. 对于每一个点,下一次甚至一个容量为本人INF边缘 ...