sed 命令及shell的if语句的运用实例
if [ -f /etc/syslog.conf ]; #判断文件是否存在
then
systest=`sed -n '/^auth.info/p' /etc/syslog.conf`; #匹配/etc/syslog.conf文件中是否有auto.info字符串,并返回字符串,systest变量接收。
if [ -n \"\$systest\" ]; #判断字符串是否存在
then
sed -e 's/^auth.info.*/auth.info \\/var\\/adm\\/authlog/g' /etc/syslog.conf > config.tmp && mv config.tmp /etc/syslog.conf; #存在则替换
else
awk '{print \$0} END{print \"auth.info /var/adm/authlog\"}' /etc/syslog.conf > config.tmp && mv config.tmp /etc/syslog.conf; #不存在则在最后一行添加,solaris系统下不支持sed -i时使用。
sed -i '\$a auth.infos /var/adm/authlogs' /etc/syslog.conf; #不存在则在最后一行添加。 redhat,suse
fi; #第一个内层判断结束
syserr=`sed -n '/^*.err;auth.info/p' /etc/syslog.conf`;
if [ -n \"\$syserr\" ];
then
sed -e 's/^*.err;auth.info.*/*.err;auth.info \@${loghost}/g' /etc/syslog.conf > config.tmp && mv config.tmp /etc/syslog.conf;
else
awk '{print \$0} END{print \"*.err;auth.info \@${loghost}\"}' /etc/syslog.conf > config.tmp && mv config.tmp /etc/syslog.conf;
fi; #第二个内层判断结束
fi;
if [ -f /var/adm/authlog ];
then
echo \"\/var\/adm\/authlog exist.\";
else
touch /var/adm/authlog; #创建文件
chown root:system /var/adm/authlog; #赋权
chmod 600 /var/adm/authlog; #赋权
echo \"create file /var/adm/authlog.\";
fi;";
sed 命令及shell的if语句的运用实例的更多相关文章
- 使用 sed 命令查找和替换文件中的字符串的 16 个示例
当你在使用文本文件时,很可能需要查找和替换文件中的字符串.sed 命令主要用于替换一个文件中的文本.在 Linux 中这可以通过使用 sed 命令和 awk 命令来完成. 在本教程中,我们将告诉你使用 ...
- shell脚本测试变量是否为空,测试文件是否存在,sed修改配置文件参数,分支语句
Shell脚本 1. 基本的几个变量 使用$?获取最近一次的执行结果: 使用$#获取传递的参数个数,类似C语言中的int argc; 使用$@获取所有的传参,类似C语言的char **argv 2. ...
- [shell基础]——sed命令
关于sed sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓 ...
- Shell之sed命令
sed用于一次性处理所有的编辑任务,尤为高效,为用户节省了大量的时间,sed适用于以下三种场合: 1.编辑相对交互文本编辑器而言太大的文件: 2.编辑命令太复杂,在交互式文本编辑器中难以输入的情况: ...
- sed命令详解 vim高级技巧 shell编程上
第1章 sed命令详解 1.1 查找固定的某一行 1.1.1 awk命令方法 [root@znix ~]# awk '!/oldboy/' person.txt 102,zhangyao,CTO 10 ...
- shell的sed命令
sed命令用于在线编辑文本,它一次处理一行内容. 命令语法: sed [-n/e/f/r/i] [cmd] [InFile] 参数解释: 选项与参数: -n: quiet/silent,安静模式,经过 ...
- 在shell中使用sed命令替换/为\/
sed命令相关: https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856901.html https://www.cnblogs.com/D ...
- shell的奇淫巧技--自动化脚本(sed命令)
使用场景:前段时间交易所项目需要在服务器上用到 根据websocket推送价格数据,在交易所内进行下单撤单处理,但是由于有多个交易对,在服务器上部署时候,略显繁琐.(撮合引擎同样有此问题,可以一并解决 ...
- Linux shell sed命令使用
Linux处理文本文件的工具: grep 过滤文件内容 sed 编辑文件内容 awk 正则表达式Regex ...
随机推荐
- MAC机中安装ruby环境--转载
http://www.cnblogs.com/pingfan1990/p/4957162.html
- sqoop的export导入到oracle中
- Bootstrap框架基础
特点:写非常少的代码 即可实现多终端的页面适配 ☑ 简单灵活可用于架构流行的用户界面和交互接口的html.css.javascript工具集. ☑ 基于html5.css3的bootstrap,具 ...
- C# WinForm控件之Dock顺序调整
最近被.net winform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化,窗口大小调整等,都可以随着窗口大小的变化而变化. 但问题是,.net winfor ...
- PHP 发送与接收流文件
http://blog.csdn.net/fdipzone/article/details/40098169
- JS实现简单的图片切换效果
使用图片进行点击切换效果 <!doctype html> <html lang="en"> <head> <meta charset=&q ...
- hdu4690 EBCDIC ——水题,考耐心
link:http://acm.hdu.edu.cn/showproblem.php?pid=4690 考的是耐心何细心啊,用map把两个表格映射一下就行~ #include <iostream ...
- Web Storage的方法
1.分为两种:localStorage与sessionStorage.2.存储形式:key-value的形式.sessionStorage 1.session定义:session指用户在浏览某个网站时 ...
- HTML中的按钮
html中的五种按钮 (1)<button></button> 表单外调用一个js文件时使用 (2)<input type="button" valu ...
- 鼠标滚动事件兼容性 wheel、onwheel
wheelEvent = "onwheel" in document.createElement("div") ? "wheel" : // ...