linux_shell常见实例
来源:互联网 发布:查鸽网软件下载 编辑:程序博客网 时间:2024/05/21 22:30
1. shell命令关于脚本, 关于统计, 比如以下: a 1 b 2 c 3 a 2 b 4 用shell分别统计
cat a.txt | awk '{a[$1]=(a[$1]" "$2)}END{for (i in a)print i,a[i];}'
读取文件后缀名:echo ${$file##*.}
查找当前目录中所有大于500M的文件,把这些文件名下到一个文本文件中,并统计其个数。
find ./ -size +500M -type f | tee file_list |wc -l
查找文件夹下所有.c文件拷贝到另一文件夹下
find ./ -name *.c |xargs -i cp {} test
在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中
for filename in `find /tmp -type f -name "abc*"|head -n 100`
do
sed -n '1p' $filename>>new
done
把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数
grep -xvf a b | tee c | wc -l
从a.log文件中提取包含“WARNING”或者“FATAL”,同时不包含“IGNORE”的行,然后提取以“:”分隔符的第五个字段
grep -E 'WARNING|FATAL' a.log | grep -v 'IGNORE' | awk -F ":" '{print $5}'
从网上下载一个文件,保存到指定目录
#!/bin/bash
url=http://rs1.bn.163.com/ent/2009/05/20_canquedege.wma
dir=~/下载
wget -P $dir $url
以行为单位,求文件A和文件B交集并集差集
并:sort -m <(sort A | uniq) <(sort B | uniq) |uniq
交:sort -m <(sort A | uniq) <(sort B | uniq) |uniq -d
差: sort -m <(sort A | uniq) <(sort B | uniq)<(sort B | uniq) | uniq -u
在下午4:50删除/abc目录下的全部子目录和全部文件;
vi /etc/crontab
50 16 * * * root rm -rf /abc/* 2>&1 &
设计一个程序,在/userdata目录下建立50个目录,并设置每个目录的权限,其中其他用户的权限为读,文件所有者的权限为读写执行,文件所有者所在组的权限为读执行
#!/bin/bash
for((i=1;i<50;i++))
do
mkdir -p/usrdata/user$i
cd /userdata
chmod 754 user$i
done
一个文件shit.txt文件内容全部是类似于【202.205.151.21】--【23:59:22】-"HTTP GET"-"Mozila"
写一个shell命令找出最多的10个IP
awk -F "--" '{print $1}' shit.txt |sort |uniq -c|sort -r| sed -n '1,10p'
cat a.txt | awk '{a[$1]=(a[$1]" "$2)}END{for (i in a)print i,a[i];}'
读取文件后缀名:echo ${$file##*.}
查找当前目录中所有大于500M的文件,把这些文件名下到一个文本文件中,并统计其个数。
find ./ -size +500M -type f | tee file_list |wc -l
查找文件夹下所有.c文件拷贝到另一文件夹下
find ./ -name *.c |xargs -i cp {} test
在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中
for filename in `find /tmp -type f -name "abc*"|head -n 100`
do
sed -n '1p' $filename>>new
done
把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数
grep -xvf a b | tee c | wc -l
从a.log文件中提取包含“WARNING”或者“FATAL”,同时不包含“IGNORE”的行,然后提取以“:”分隔符的第五个字段
grep -E 'WARNING|FATAL' a.log | grep -v 'IGNORE' | awk -F ":" '{print $5}'
从网上下载一个文件,保存到指定目录
#!/bin/bash
url=http://rs1.bn.163.com/ent/2009/05/20_canquedege.wma
dir=~/下载
wget -P $dir $url
以行为单位,求文件A和文件B交集并集差集
并:sort -m <(sort A | uniq) <(sort B | uniq) |uniq
交:sort -m <(sort A | uniq) <(sort B | uniq) |uniq -d
差: sort -m <(sort A | uniq) <(sort B | uniq)<(sort B | uniq) | uniq -u
在下午4:50删除/abc目录下的全部子目录和全部文件;
vi /etc/crontab
50 16 * * * root rm -rf /abc/* 2>&1 &
设计一个程序,在/userdata目录下建立50个目录,并设置每个目录的权限,其中其他用户的权限为读,文件所有者的权限为读写执行,文件所有者所在组的权限为读执行
#!/bin/bash
for((i=1;i<50;i++))
do
mkdir -p/usrdata/user$i
cd /userdata
chmod 754 user$i
done
一个文件shit.txt文件内容全部是类似于【202.205.151.21】--【23:59:22】-"HTTP GET"-"Mozila"
写一个shell命令找出最多的10个IP
awk -F "--" '{print $1}' shit.txt |sort |uniq -c|sort -r| sed -n '1,10p'
0 0
- linux_shell常见实例
- linux_shell
- linux_shell脚本
- Linux_Shell基础
- Linux常用命令全集 linux_Shell(脚本)编程入门_实例讲解详解
- linux_shell笔记(一)
- linux_shell笔记(二)
- linux_shell笔记(三)
- linux_shell笔记(四)
- linux_shell笔记(五)
- linux_shell笔记(六)
- linux_shell笔记(七)
- linux_shell笔记(八)
- linux_shell笔记(九)
- linux_shell笔记(十)
- linux_shell学习总结(2)...
- linux_shell及常用命令介绍
- linux_shell编程学习笔记
- List对象排序通用方法
- SIP:未来网络多媒体通信中的明星
- MySQL批量替换字符串
- How To Transact Move Order Using INV_PICK_WAVE_PICK_CONFIRM_PUB.Pick_Confirm API
- adb shell am 命令
- linux_shell常见实例
- Maven项目编译后classes文件中没有.xml mybatis BindingException
- 类加载器的继承结构
- Android BuildConfig.DEBUG的妙用:http://stormzhang.github.io/android/2013/08/28/android-use-build-config
- LINK: WinRT, Xamarin.Android, Xamarin.iOS - How to implement a "pull-to-refresh" list
- memset函数详细说明
- 表达式计算器
- 一道题目
- 浅谈virtual函数与其他成员函数