栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

实用shell脚本整理1

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

实用shell脚本整理1

实用shell脚本整理1 1. 验证服务器中安装的python版本
PY_VERSION=`python3 -V 2>&1|awk '{print $2}'|awk -F '.' '{print $1}'`
2. 安装rpm格式的yum软件
rpm -ivh dos2unix-6.0.3-7.el7.x86_64.rpm
3. 执行python脚本
python3 -c 'import func_python; func_python.modifyConfigServerYaml();'
4. 重写指定字符串所在行(一行)
sed -i s#BASE_USER_PATH=.*#BASE_USER_PATH=/home/test# test.sh
注:#号换成/号也可
5. 指定文件夹所属用户和用户组(一般由root用户使用)
chown -R test:test /home/log/
6. 查找某字符串所在行并注释掉(例子中为redis)
#这个只是我使用的脚本,应该有更简洁的脚本
num=$(sed -n '/redis/=' filename)
sed -i "$num s/^/#&/" filename
7. 注释掉某字符串出现的所有行
sed -i 's/^[^#].*password*/#&/g' filename
8. 根据指定符号(例子为“:”)截取字符串(第三个/后的空格是必须的)
 #esPass的格式类似于 elastic:123456
 array=(${esPass//:/ })
 esUserName=${array[0]}
 esPassword=${array[1]}
9. 远程登录服务器并切换用户执行shell命令(shell命令为执行postgresql库的sql命令),并将结果输出到指定文件
ssh -l root $serverip "su - $gpuser -c 'cd /home/$gpuser; psql -h $serverip $dbname -U $gpuser -f get_authFilePath.sql >> res.txt;'"
10. res.txt中的文件格式是数据库中select命令的结果格式,对该文件指定行的数据进行提取(第三行)
authFilePath=$(sed -n '3p' res.txt)
11. 获取指定字符串出现的所有行,根据行号,重写该行
例1:
 #$authFilePath此处表示一个路径地址,可忽略
 line1=$(grep -n "keyTab" jaas.conf | cut -d ":" -f 1)
 var=${line1// / }
 for element in $var
 do
     #去除$authFilePath自带的所有空格
     authFilePath=`echo $authFilePath | sed -e 's/^[ t]*//g'`
     line1=$element"c keyTab="$authFilePath/user.keytab""
     sed -i "$line1" jaas.conf
 done
  例2:
 line2=$(grep -n "principal" jaas.conf | cut -d ":" -f 1)
    echo $line2
 var=${line2// / }
 for element in $var
 do
     line2=$element"c principal="$esUserName""
     sed -i "$line2" jaas.conf
 done
注:1.脚本中的 keyTab="$authFilePath/user.keytab" 以及 principal="$esUserName" 便是重写的内容
2.这个基本就是三行脚本改一行代码,当需要改的地方比较多了之后,会显得脚本很笨重。开发的时候忙着出版本,并且改的量很小。我觉得该脚本有非常大的优化空间

以上脚本均是之前开发项目功能时实际用到的脚本语句,觉得还挺实用的,便在这里记录一下。由于本人并没有系统学过脚本语言,所以有些功能的实现脚本写的很一般,以后有机会再优化吧。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/829288.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号