shell日常脚本

1、用一条命令找出/etc/目录下过去24小时内被修改过的文件,后缀名是.log的文件并删除。
find /etc -type f -mtime -1 -name "
log*" -exec rm -rf {} \;

2、从test.log文件中找出包含“Not”、“Fail”或“Error”,同时不包含”Info”字段的行,然后找出以冒号“:”分割的最后一列字段。
cat test.log |grep -e "Not" -e "Fail" -e "Error" |grep -v "Info"|awk -F : ‘{print $NF}‘

3、目录/test/下有100个普通文件,有的文件有后缀名.txt,有的则没有后缀名,写一个脚本,将/test/目录下所有文件没有后缀名的文件都重命名为以.txt结尾。

#!/bin/bash
cd /test/
for aa in find . - type f ! -name "*.txt"
do
mv $aa $aa.txt
done

4、写一个计划任务脚本,每周一凌晨01:30将/opt/目录下的所有内容打包备份至/data/backup/目录下,且文件名命名形式为yyyymmdd-opt,yyyy为年,mm为月,dd为日。

crontab –e
30 1 1 /home/aa.sh >/dev/null 2>&1

#!/bin/bash
#/home/aa.sh
time=date +%Y%m%d
tar czvf $time-opt /opt/
mv $time-opt /data/backup/

5、用一条命令统计出apache访问日志access.log中每个IP地址访问的次数,按照访问量列出前10名。
日志格式样例如下:
192.168.1.10 - - [24/Jul/2017:23:55:55 +0800] “GET /HTTP/1.1” 200 19

more access_log | awk ‘{print $1}‘ | uniq -c | sort -rn | head -10

6、打印出test.conf文件中不以”#”开头,且不是空行的内容。

sed -e "/^#/d" test.conf | awk ‘{if (length !=0) print $0}‘

7、写一个计划任务,每2小时执行一次/opt/app/test.sh。
crontab –e

  • /2 /opt/app/test.sh >/dev/null 2>&1

原文地址:http://blog.51cto.com/10676568/2134650

时间: 2024-10-25 00:17:14

shell日常脚本的相关文章

shell日常使用整理

基本常识 1.变量命名规则: 首字符必须为字母 中间不能有空格,可以有下划线_ 不能使用标点符号 不能使用bash里的关键字 2.变量赋值: 变量名=值, (注意,= 两边不能有空格) var=1var=$var+1 echo $var+1输出为1+1,而不是2 可以用如下方法使其输出为2let "var+=1"#var=$[$var+1]#var=$(($var+1)) echo $var 或者var=1var= expr $var + 1 #(注意,+ 两边的空格,一定要有) le

Vim编辑器和Shell命令脚本

Vim编辑器和Shell命令脚本 Vim文本编辑器 Vim文本编辑器内设有三种模式:命令模式.末行模式和编辑模式. 命令模式:控制光标移动,可对文本进行删除.复制.粘贴和查找等工作. 输入模式:正常的文本录入. 末行模式:保存.退出与设置编辑环境. 命令模式和末行模式下的一些快捷键: 末行模式下的命令: Shell命令脚本 Shell终端解释器类似人与计算机硬件的翻译官,作为用户与Linux系统内部通讯的媒介.Shell脚本命令的工作方式有两种,首先是前面所接触的交互方式,即当用户每输入一条命令

shell编程脚本语法

学习了两个月的Linux,记住了很多命令,知道了脚本的作用,也被脚本杀死了大概一半的脑细胞,现在脚本还不能熟练运用,感觉亏了.心疼我的脑细胞,痛恨脚本,但不得不说,脚本是一个好东西啊,用起来真的方便,但是写起来真的烧脑袋呦!下面来总结一下这周学习的脚本语法,哇,语法虽然不多也不难,但是结合起来熟练运用还有一定的难度,何况现在的脚本才几行,以后要写几行,心里没点数吗!废话少说,开始 跳过最基础的命令行堆积的脚本,总结一下让脚本更简洁实用的语法 首先,条件选择if语句登场 if语句用法:常见的单分支

怎么在命令模式下使用adb / 进入adb shell(脚本)

1.打开winows菜单,输入cmd命令,点击确定,进入命令模式下. 2.输入命令 D:(这里输入的D表示你的sdk存放的盘下) 然后回车输入cd 3.然后选择你sdk路径,复制路径. 4.鼠标点击cmd,选择编辑,选择粘贴 将复制的路径粘贴到 命令行 回车. 5.然后输入命令adb start-service 打开adb. 出现如图所示,表示adb服务开启成功,就可以使用adb命令了. 6.使用adb  shell 命令.--- 进入adb shell(脚本) 原文:http://jingya

shell之脚本实例

一 检查用户是否是root权限的方式:#!/bin/bashROOT_UID=0 # Root has $UID 0.E_WRONG_USER=65 # Not root? E_NOSUCHUSER=70SUCCESS=0 if [ "$UID" -ne "$ROOT_UID" ]then echo echo "Only root can run this script." echo exit $E_WRONG_USERelse echo ech

linux下的shell和脚本

1.各种Unix shell linux下的shell基本是从unix环境中的shell发展而来,贴一下wiki:其中我们常用的,可归类为Bourne Shell(/usr/bin/sh或/bin/sh).Bourne Again Shell(/bin/bash).C Shell(/usr/bin/csh).K Shell(/usr/bin/ksh).Shell for Root(/sbin/sh),等等 第一个Unix shell是由肯·汤普逊,仿效Multic上的shell所实现出来,称为s

【Telnet】使用Telnet协议连接到远程Shell执行脚本

介绍 本文介绍如何通过Telnet协议连接到远程Shell,执行脚本,并获取执行结果: 相关文章: <[Jsch]使用SSH协议连接到远程Shell执行脚本>http://www.cnblogs.com/ssslinppp/p/6244653.html 其他示例: http://commons.apache.org/proper/commons-net/examples/telnet/TelnetClientExample.java http://www.programcreek.com/ja

Linux shell 自启动脚本写法

# ********************************************************************** # Linux shell 自启动脚本写法 # 说明: # 我们在做系统的时候,写自启动脚本是常有的事,下面是一个样板分析. # # 2017-1-10 深圳 南山平山村 曾剑锋 # ********************************************************************** #!/bin/sh # 脚本

「笔记」「ubuntu」mint个人shell样式脚本

alias ll='ls -al' use_color=false # Set colorful PS1 only on colorful terminals.# dircolors --print-database uses its own built-in database# instead of using /etc/DIR_COLORS.  Try to use the external file# first to take advantage of user additions.