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的更多相关文章

  1. (转载)linux中shell变量

    (转载)http://blog.csdn.net/zahuopuboss/article/details/8633891 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存 ...

  2. Linux命令行和Shell高效率使用方法

    Ctrl+R快速搜索history Ctrl+P显示上一条命令 快速执行一条history命令:!!/!-number ======================================== ...

  3. node.js 使用 UglifyJS2 高效率压缩 javascript 文件

    UglifyJS2 这个工具使用很长时间了,但之前都是在 gulp 自动构建 时用到了 UglifyJS 算法进行压缩. 最近玩了一下 UglifyJS2 ,做了一个 在线压缩javascript工具 ...

  4. Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  5. Linux和Shell回炉复习系列文章总目录

    本页内容都是本人回炉Linux时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接右上角叉 ...

  6. 命令行界面 (CLI)、终端 (Terminal)、Shell、TTY的区别

    虽然这个话题已是老生常谈,搜索一下应该也能找到大把的相关文章.不过难得提到了这方面,就趁此机会把我的理解写下来,一来看看我是不是真正理解了,二来看看我能不能把它们之间的区别讲得更加简明易懂. 0. 太 ...

  7. 第4章 Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  8. shell实现洗牌随机

    洗牌问题: 洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样 高效率的实现乱序排列? 关于洗牌问题,其实已经有了一个很好的shell解法,这里另外给三个基于AWK的方法, ...

  9. Android之高效率截图

    本文来自网易云社区 作者:孙圣翔 在一张Android手机上截图有好多办法,为了能够高效率的截图,我几乎把所有的方法都尝试了一般.走了好多路,也遇到了好多的问题. 只是想记录下这其中的不容易. 下面所 ...

随机推荐

  1. ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl

    原文:ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl 第四章 组合控件开发CompositeControl 大家好,今天我们来实现一个自定义的控件,之前我们已经 ...

  2. hadoop得知;block数据块;mapreduce实现样例;UnsupportedClassVersionError变态;该项目的源代码相关联

    对于开源的东西.特别是刚出来不久.我认为最好的学习方法是能够看到源代码,doc,样品测试 为了方便查看源代码,导入与项目相关的源代码 watermark/2/text/aHR0cDovL2Jsb2cu ...

  3. Android ImageView分析并展开

    版本号:1.0  日期:2014.6.11 2014.6.12 版权:© 2014 kince 转载注明出处   ImageView是开发中经常使用到的一个控件,也能够说是不可缺少的. 对于它的使用. ...

  4. 存储数据键和项目对的类(Dictionary对象)

    存储数据键和项目对的类(Dictionary对象) <% Class Dictionary Public Copyright, Developer, Name, Version, Web Pri ...

  5. 【SQL Server性能优化】SQL Server 2008该表压缩

    当数据库是比较大的,而当你想备份,我们可以启动数据库备份压缩.这项由于备份文件比较小的压缩,所以整个备份的更快的速度,同时还低了磁盘空间的消耗. 当然还有一方面.肯定会添加cpu的消耗.只是一般的se ...

  6. redis基础的字符串类型

    redis —— 第二篇 基础的字符串类型 我们都知道redis是采用C语言开发,那么在C语言中表示string都是采用char[]数组的,然后你可能会想,那还不简单,当我执行如下命令,肯定是直 接塞 ...

  7. 真实故事:网站遭遇DOS攻击

     网站遭遇DOS攻击 一个.事件背景 长假对于IT人员来说是个短暂的休整时期,可IT系统却一时也不能停.越是节假日,越可能出大问题,以下要讲述的就是一起遭受DOS攻击的案例. 春节长假刚过完,小李 ...

  8. Effective C++ -- 继承和面向对象设计

    32.确保你的public继承了模is-a关系 public继承意味着is-a关系(里氏替换原则),一切适用于基类也适用于派生类. 矩形继承正方形问题: 可实施与矩形的操作无法实施与正方形 在编程领域 ...

  9. Linux网络编程一站式学习

    提要 学过非常多遍计算机网络,依旧不会网络编程. 看完这篇文章之后就不会是这样了. 环境:Ubuntu14.04 64bit 何为Socket 是基于TCP/IP的网络应用编程中使用的有关数据通信的概 ...

  10. Spring 5 (0) - Introduction & Index

    Spring Framework Reference Documentation I. Overview of Spring Framework . Getting Started with Spri ...