linux shell 知识点及问题总结

  1. awk命令查找一个字符串是否包含某个关键字:

    temp=`echo $param | awk '{print index($1,"bulkload-arg-s")}'`
    

    ps:param被当做awk的参数传入到后面 awk程序中执行。

应用场景示例脚本:

#!/usr/bash
paramArray=$@
for param in ${paramArray[@]}; do
temp=`echo $param | awk '{print index($1,"steven-test")}'`
if [[  $temp -ne 0 ]];then
PARAM=$param
fi
done
OLD_IFS="$IFS"
IFS="|"
arr=($PARAM)
IFS="$OLD_IFS"
echo $arr[0] $arr[1] $arr[2] $arr[3]

简述:上面那个场景是首先循环识别参数输入的参数列表中是否包含 steven-test关键字,如果包含则用PARAM记录这个参数,然后用|分隔这个参数,将这个参数分隔成一个数组,并打印出来。

  1. sudo -u admin 和 sudo su admin的区别?
    sudo -u admin 是临时获取admin权限来执行命令,但是环境变量读取的是当前用户的。而 sudo su admin 是切换到admin用户在执行命令,环境变量读取的是admin的。本次启动遇到一个问题就是,用sudo su admin 来启动应用部署脚本,然后再java代码中向线程中写入 环境变量,其实个环境变量写入了 admin的 shell环境里,但是应用启动读取的是 那个启动用户的环境变量,致使调试不过。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值