shell脚本 回顾 小练习
1.把/OPT目录下(包含子目录)下所有后缀为“.sh”的文件后缀变更为“.shell”
2.将A、B、C目录下的文件A1、A2、A3文件改名为A4、A5、A6
3.如何在vi模式下将文件中的aa字符串批量改成bb
1.
#!/bin/bash
dir=/hanzhao
files=`find /hanzhao/ -name '*.sh'`
for file in $files
do
# echo $file
filename=${file%.*}
# echo $filename
mv $file ${filename}.shell
done
2.
#!/bin/bash
file=`ls /[ABC]/A[123]`
for i in $file
do
num=${i##*A}
let num1=num+3
# echo $num1
# num2=${i%A*}
# echo $num2
mv $i ${i%A*}A$num1
done
3.
直接用vi打开文件,之后再读模式下 直接输入 :%s#aa#bb#g
4备份每天的日志
#!/bin/bash
cp /opt/lampp/logs/access_log /opt/bak_access_log-`date +%Y%m%d%H%M`
>/opt/lampp/logs/access_log
5.启动停止 lampp
#!/bin/bash
start=0
pidnum=`ps aux|grep "/opt/lampp/*"|wc -l`
echo ${pidnum}
if [ ${pidnum} -gt 1 ]
then
echo 'lampp is start'
read -p 'Do you wish to stop lampp? y or n: ' yn
case $yn in
[Yy]* )start=1;;
[Nn]* )exit;;
* )echo 'Please answer Y or N'
exit;;
esac
else
echo 'lampp is stop,doing start'
read -p 'Do you wish to start lampp? y or n: ' yn
case $yn in
[Yy]* )start=0;;
[Nn]* )exit;;
* )echo 'Please answer Y or N'
exit;;
esac
fi if [ ${start} -eq 1 ]
then ps aux|grep "/opt/lampp/*"|grep -v "grep"|awk '{print $2}'|xargs kill -9
echo 'lampp is stop'
else
/opt/lampp/lampp start
echo 'lampp is start'
fi
5.根据进程号查询启动路径
#!/bin/bash
pid=`ps -ef|grep "httpd"|grep -v "grep"|awk '{print $2}'`
echo ${pid}
for every_pid in ${pid}
do
exe_path=`ls -l /proc/${every_pid}|grep "exe ->"|awk '{print $NF}'`
echo "exe_path:"${exe_path}
done
6.杀死 进程
ps -ef |grep "httpd"|grep -v "grep"|awk '{print$2}'|xrags kill -9
7.条件查询文件
awk -F"," '{if($1==1||$2>34&&....)print}' a.txt
8.awk 求平均值:
awk '{NR>1}BEGIN{sum=0;num=o}{if($1==2){sum+=$2;num+=1}}END{print(sum/num)}' hanzhao
shell脚本 回顾 小练习的更多相关文章
- shell脚本动画小工具
shell脚本动画小工具 看gif图: shell脚本版 脚本内容如下: #!/usr/bin/env bash ## ---------------------------------------- ...
- 远程执行shell脚本的小技巧
很多时候需要批量跑脚本执行任务,但又不想分发再执行,而是直接一条命令下去就跑脚本,该怎么玩比较嗨? 例如以下脚本: #!/bin/bash echo "$@" echo " ...
- Linux中编写shell脚本的小例子
1.创建一个test.sh的文件 touch test.sh 2.编辑这个文件 vi test.sh 3.进入到编辑页面后将编辑页面先切换成编辑模式(按Esc键就可以切换) 4.切换到编辑模式后开始向 ...
- Docker学习3-简单shell脚本安装mysql5.7与docker小技巧
前言 玩过Windows中的 .bat 的小伙伴是不是觉得很有意思呢,github中一键推送.同步拉取等等操作,哈哈,当然shell脚本也是很类似,可以运行一个脚本就可以自动给我们部署好环境啦!但是这 ...
- linux运维自动化shell脚本小工具
linux运维shell 脚本小工具,如要分享此文章,请注明文章出处,以下脚本仅供参考,若放置在服务器上出错,后果请自负 1.检测cpu剩余百分比 #!/bin/bash #Inspect CPU # ...
- shell脚本中的几个括号总结(小括号/大括号/花括号)--from:http://www.cnblogs.com/hanyan225/archive/2011/10/06/2199652.html
在Shell中的小括号,大括号结构和有括号的变量,命令的用法如下: 1.${var}2.$(cmd)3.()和{}4.${var:-string},${var:+string},${var:=stri ...
- java 调用bash shell脚本阻塞的小问题的解决
java 调用bash shell脚本阻塞的小问题的解决 背景 使用java实现的web端,web端相应用户的界面操作,使用java调用bash实现的shell脚本进行实际的操作,操作完成返回执行结 ...
- shell脚本小案例
1.获取远程ftp数据到本地目录 #!/bin/bash ftp -n<<! open 135.0.24.19 user exchange exchange binary cd /idep ...
- shell脚本中的几个括号总结(小括号/大括号/花括号)
from:http://www.cnblogs.com/hanyan225/archive/2011/10/06/2199652.html 是毋庸置疑的,方便了我们也迷惑了我们,比如这些杂七杂八的括号 ...
随机推荐
- PBKDF2加密
password - the password that needs to be hashed. This should be convertedinto a char array before pa ...
- HDU 2480 Steal the Treasure (并查集+贪心)
题意:给你n个点,m条边,包括有向边与无向边,每条边都有一个权值.在每个点上都有一个人,他可以走与这个点直接相连的所有边中任意一条边一次,并且得到这个权值,就不能走了,注意这条路也只能被一个人走.问最 ...
- lnmp安装exif扩展
lnmp安装exif扩展 1.找到位置 cd /usr/local/lnmp1.4-full/src 2.解压php sudo bzip2 -d php-5.6.31.tar.bz2 sudo tar ...
- 重置 Launchpad 和更新APP图标缓存
重置 Launchpad 方法一:在终端里粘贴 defaults write com.apple.dock ResetLaunchPad -bool true; killall Dock 方法二:在终 ...
- C++中内部类访问外部类的私有成员
首先,如果不知道什么是内部类InnerClass的话,就没必要往下看了. 尝试在C++中模仿apple objective-c 的Grand Dispatch简化多线程编程时,使用了boost::fu ...
- python 实现一个TwoSum的例子
今天无意中看到一个题目,也不是很难,就想着用python实现以下: 题目是数组中的两个数相加等于输入的一个target,然后输出数组的下标. 比如: [1,2,3,4,5,6] target=7 返 ...
- 07-THREE.JS 各种形状的几何图形
<!DOCTYPE html> <html> <head> <title>Example 02.04 - Geometries</title> ...
- [转载]Java开发在线打开编辑保存Word文件
Java调用logo是“P”图标的第三方插件,实现在线编辑保存Word文件(以jsp调用为例,支持SSM.SSH.SpringMVC等流行框架) 工具/原料 Eclipse或MyEclipse等j ...
- 分布式事务_03_2PC框架raincat源码解析-事务提交过程
一.前言 前面两节,我们已经将raincat的demo工程启动,并简单分析了下事务协调者与事务参与者的启动过程. 这一节,我们来看下raincat的事务提交过程. 二.事务提交过程概览 1.二阶段对应 ...
- git 远程库 创建私钥
1.创建SSH Key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步.如果没有,打开Shell(W ...