#!/bin/sh
#
# Name: add_del_mod.sh configure file operation script.
#
# Version: 1.0.0 05-Dec-2008
# Author : tcaosmail@gmail.com
#
# Description:
# add, delete and modify specified record in a
# configure file according to parameters.
#
# Synopsis: add_del_mod FILE [ADD|DEL|MOD] [ROW_NUM] [LINE_CONTENT]
#
# Examples:
# add_del_mod /etc/ipsecmc/userip.conf ADD 1 "olymuser 123456 192.168.135.1"
# add_del_mod /etc/ipsecmc/userip.conf MOD 1 "olymuser 123456 10.0.0.1"
# add_del_mod /etc/ipsecmc/userip.conf DEL 1
#
[ "$#" -lt "3" ] && echo "too few parameters!" && exit 1
FILE="$1"
ACTION="$2"
NROW="$3"
TMPFILE="$FILE-$$"
# check file exist or not.
[ ! -e "$FILE" ] && echo "FILE: [$FILE] not exist!" && exit 1
# check row number is a pure number.
[ `echo $NROW | grep -c '^[0-9]*$'` != 1 ] && echo "ROW_NUM: [$NROW] is not digit!" \
&& exit 1
case "$ACTION" in
"ADD")
[ "$#" != "4" ] && echo "too few parameters for action [ADD]!" && exit 1
if [ "$NROW" == "0" ]; then # append to the end of file.
echo "$4" >> $FILE
else
cat $FILE | grep -v '^$' | sed "${NROW}i $4" > $TMPFILE
mv $TMPFILE $FILE
fi
;;
"MOD")
[ "$#" != "4" ] && echo "too few parameters for action [MOD]!" && exit 1
cat $FILE | grep -v '^$' | sed "${NROW}c $4" > $TMPFILE
mv $TMPFILE $FILE
;;
"DEL")
cat $FILE | grep -v '^$' | sed "${NROW}d" > $TMPFILE
mv $TMPFILE $FILE
;;
*)
echo "action [$ACTION] invalid!"
exit 1
;;
esac
exit 0
分享到:
相关推荐
到此这篇关于Linux bash:./xxx:无法执行二进制文件报错的文章就介绍到这了,更多相关Linux 无法执行二进制文件 内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!...
This thoroughly revised edition of bash Cookbook teaches shell scripting the way Unix masters practice the craft. Three Unix veterans present a variety of recipes and tricks for all levels of shell ...
NULL 博文链接:https://javatea.iteye.com/blog/2360941
linux bash vim配置文件,不错的配置,可以节省大家时间。
bash基本的配置文件示例 可控制bash基本属性
-bash: /usr/local/jdk/jdk1.8.0_181/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 安装完后 java -version 查看版本出现: 原因是:没有那个文件或目录,找了很久发现需要...
主要介绍了Shell脚本bash: ./t.sh:/bin/bash^M:损坏的解释器: 没有那个文件或目录,需要的朋友可以参考下
以上所述是小编给大家介绍的解决-BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 权限不够问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持! ...
bash: vi: command not found, 场景: 因为 docker里面没有这个命令,我们安装一下 apt-get update apt-get install vim 如果 这个时候 安装也还是会出现 异常 root@446d7cf1606c:/etc/mysql# apt-get update ...
linux下提示bash-command not found.docx
Pro Bash Programming, Scripting the
前几天重装了mysql,装好之后navicat一直正常可以对mysql进行操作,但是今天要使用命令行进行操作时遇到-bash: mysql: command not found的问题。 总结一下解决办法: 这个问题的出现是两个原因 1 .bash_profile中...
感谢您检查我的穷尽的配置文件。 截至2020年1月28日,以下是我从中获得的一些功能: 通过.inputrc ,可以进行许多用户端调整。 包含Lad,它是列出和描述功能和/或别名的工具。 .bash_functions和.bash_aliases...
gentoo的bash配置文件,用于获得gentoo默认控制台颜色。 将.bashrc复制到/etc/skel/目录下,将bash.bashrc复制到/etc目录下即可。
windows下msys2或git-bash终端主题配置文件。 1. msys2环境,请将配置文件放在它的$HOME路径下,举例:C:\msys64\home\username\ 2. git-bash环境,请将配置文件放在windows系统的用户目录下,举例:C:\Users\...
MySQL二进制文件开启及查看详解,就解释了如何分析日志文件 .
我构建了hadoop集群。我们一定会写一个shell脚本去每一个节点上去jps,查看每个节点的进程情况。 原先以为shell很简单: #!/bin/bash #查看每个节点运行情况 for((host=101;...-bash: jps: command not found
linux平台的bash shell开发帮助文档(手册),英文版,版本4.2。日常开发shell翻阅, 章节如下: Definitions:: Some definitions used i n the rest of this manual. Basic Shell Features:: The shell "building ...
bash-yaml:读取yaml文件并在bash中创建变量