linux下脚本实现从一个文件中读数,有文件多行 (每行都是:名称 + 多个空格 + 数据 ),
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下脚本实现从一个文件中读数,有文件多行 (每行都是:名称 + 多个空格 + 数据 ),相关的知识,希望对你有一定的参考价值。
只要某行中的数据,把它赋值给一个变量
参考技术A while循环加read命令然后解析字符串当然awk跟厉害 参考技术B #!/bin/bash
[ -z $1 ] && echo "Useage $0 + SearchName" && exit 1
while read line
do
if [ $1 == `echo $line | awk ' print $0' ` ]
then
data=`echo $line | awk ' print $1 '`
echo "the $1 values is $data"
fi
done < filename 参考技术C 看起来使用awk命令可以实现。,lz描述下具体的内容。追问
比如 文件abc中有
a 2
b 3
c 5
现在要把b的值3读出来 赋给d
#!/bin/sh
d=`cat abc | awk -F ' ' '$1 == "b" print $2'`
echo $d
jenkins下脚本权限问题
在jenkins环境下,执行需要root权限的脚本,报错。
修改方法:
1. centos环境下,在/etc/sudoers.d/ 目录下,增加一个 jenkins文件,内容如下:
Defaults:jenkins !requiretty
jenkins ALL=(ALL) NOPASSWD: ALL
2. 在脚本中命令前,增加sudo命令即可,或sudo 执行脚本
sudo /opt/webmaster/sitedeploy.sh --source $BUILD_DIR --site xxx.com --clear
或
sudo rm -rf /root/.gnupg
参考:
https://segmentfault.com/a/1190000004322188
http://blog.csdn.net/gzh0222/article/details/41594017
以上是关于linux下脚本实现从一个文件中读数,有文件多行 (每行都是:名称 + 多个空格 + 数据 ),的主要内容,如果未能解决你的问题,请参考以下文章