一键添加和启动Redis其他端口如下
#!/bin/bash
set -- `getopt d:p:h $*`
getopt_rc=$?
if [ "$getopt_rc" -ne "0" ]; then
pgm=`basename $0`
echo "$pgm $getopt_rc Process failed during getopt attempt - illegal parameters"
exit 10
fi
while [ $# -gt 0 ]; do
case $1 in
-p)
shift
NEW_PORT=$1
shift
;;
--)
shift
break
esac
done
if [ -z "$NEW_PORT" ]; then
echo "-p [port] must input"
exit
fi
CONFIG_DIR='/etc'
CONFIG="$CONFIG_DIR"/redis."$NEW_PORT".conf
REPLACE_PORT="50{s/6379/$NEW_PORT/}" # 只替换第50行
REPLACE_DB="182{s/dump.rdb/dump.$NEW_PORT.rdb/}" # 只替换第182行
cp $CONFIG_DIR/redis.conf $CONFIG && sed -i -e $REPLACE_PORT $CONFIG && sed -i -e $REPLACE_DB $CONFIG
/usr/local/bin/redis-server $CONFIG
注:
使用sed命令只替换某一行。
保存为add_redis_port.sh,使用方法:
chmod +x ./add_redis_port.sh
./add_redis_port.sh -p 6588