`

shell脚本中curl带参数及awk的命令替换

阅读更多

shell脚本中curl带参数的命令替换,双引号不需要转义,像写json一样写字符串,curl命令使用单引号引起来,执行时使用$()而不是反引号``,awk也是同样,使用单引号把命令引起来,双引号不需要转义,像写json一样直接写出来;

 

以下是具体的代码:

#!/bin/bash
cd `dirname $0`

CUR_DIR=`pwd`

UID_FILE=$CUR_DIR/uid.txt
if [ ! -e $UID_FILE ]; then
    echo "ERROR:uid.txt not found"
    exit 1
fi


PHONE_PRE='curl -X POST -d q={"uid":"'
PHONE_SUF='"}  http://192.168.238.11:8080/user/getUserinfoByUid'

NAME_PRE='curl -X POST -d driverId='
NAME_SUF='&productId=2148131421781&caller=am0131777124&mode={"needDriverBiz":1,"needDriverBasic":1}&fields=[name,photo_url] http://192.168.156.121:8080/driver/getDriver'


for  line  in  `cat $UID_FILE`
do
  #statements
  echo "uid:$line"
  PHONE_COMMAND="${PHONE_PRE}${line}${PHONE_SUF}"
  echo "PHONE_COMMAND:$PHONE_COMMAND"
  PHONE_RES=$($PHONE_COMMAND)
  echo "PHONE_RES:$PHONE_RES"
  PHONE=`echo $PHONE_RES | awk '/cell/{a=index($0,"cell");if(a>1){c=substr($0,a+6,13);print c;}}'`

  NAME_COMMAND="${NAME_PRE}${line}${NAME_SUF}"
  echo "NAME_COMMAND:$NAME_COMMAND"
  NAME_RES=$($NAME_COMMAND)
  echo "NAME_RES:$NAME_RES"
  NAME_D=`echo $NAME_RES | awk '/driver_name/{a=index($0,"driver_name");if(a>5){c=substr($0,a+13,23);print c;}}'`

  echo $line $PHONE $NAME_D >> uid_phone_name.txt
done

 

分享到:
评论

相关推荐

    shell 脚本 实例 shell 脚本 实例

    在IT行业中,Shell脚本是一种极其重要的自动化工具,特别是在Linux和Unix系统中。Shell脚本允许用户通过编写简单的命令序列来执行复杂的任务,极大地提高了工作效率。以下是对"shell 脚本 实例"这一主题的详细说明。...

    shell脚本-大数据

    shell脚本是Linux或Unix操作系统中的一种命令解释器,用于执行一系列的命令、任务自动化和数据处理,特别适合在大数据场景下进行数据预处理、分析和调度。 首先,让我们深入理解shell脚本如何应用于大数据处理。在...

    Linux shell 脚本攻略

    Linux Shell脚本是Linux操作系统中一种强大的自动化工具,它允许用户通过编写脚本来执行一系列命令,实现系统管理和任务自动化。本书《Linux Shell脚本攻略》(第2版)深入浅出地介绍了Shell脚本的编写技巧和实战...

    linux下101个shell脚本

    在Linux操作系统中,Shell脚本是一种强大的工具,用于自动化日常任务、管理系统以及执行一系列命令。"Linux下101个shell脚本"是一份宝贵的资源,涵盖了从基础到高级的各种shell脚本示例,对于想要深入学习Linux ...

    自动下载并保存GFS数据的Shell脚本

    标题中的“自动下载并保存GFS数据的Shell脚本”是指使用Linux的Shell脚本语言编写的一个程序,这个程序能够自动化地从网络上获取全球预报系统(Global Forecast System,简称GFS)的气象数据,并将其存储到本地或者...

    Linux 好用shell脚本集合

    Shell脚本是Linux系统中的程序,它们由Bash或其他Shell解释器执行,用于执行一系列命令或自动化流程。 在这个压缩包中,我们可能找到各种类型的脚本,例如系统监控、备份策略、用户管理、日志分析、网络诊断等。...

    shell常用工具

    编写Shell脚本可以自动化一系列任务。基本结构包括: ```bash #!/bin/bash # 脚本注释 command1 command2 ... ``` 通过赋予权限(`chmod +x script.sh`)并运行(`./script.sh`)来执行脚本。 五、其他实用工具 1. ...

    linux shell脚本攻略-第2版

    Shell脚本是Linux系统中不可或缺的自动化工具,它允许用户通过编写简单的或复杂的命令序列来执行日常任务,极大地提高了工作效率。这本书详细介绍了如何利用bash shell,这是Linux中最常用的Shell,来编写高效且实用...

    linux shell 脚本编程

    9. 常用命令:在Shell脚本中,我们会频繁使用`cd`改变目录,`ls`列出文件,`grep`搜索模式,`find`查找文件,`sed`文本处理,`awk`处理列式数据,以及`curl`和`wget`下载网络资源等。 10. 最佳实践:良好的脚本编程...

    我的shell脚本

    在描述中提到了一个博客链接,虽然具体内容没有给出,但我们可以根据提供的文件名来推测一些可能涉及的Linux Shell脚本编写和管理知识。 1. **Shell脚本基础**: - Shell是Linux/Unix系统中的命令解释器,用于执行...

    一段天气小脚本shell

    Shell脚本是Linux或Unix系统中常用的自动化任务工具,它允许用户通过命令行接口执行一系列操作。 描述中提到这个脚本是从网上找到的,目的是供人学习和参考。这表明这是一个基础的示例,可能包含了一些基本的Shell...

    101个超酷Shell脚本(英文版)-新版.rar

    Shell脚本是Unix和类Unix系统中的一种强大工具,它允许用户通过编写简单的命令序列来执行复杂的任务。Shell本身是系统的命令解释器,如Bash(Bourne-Again SHell)是最常见的Unix/Linux默认Shell。掌握Shell脚本编写...

    运维 - 日常运维常用 shell 脚本.zip

    10. **自动化部署**:通过shell脚本实现软件的自动化安装、配置和升级,例如使用`curl`或`wget`下载软件,`tar`解压,`make`编译等。 11. **性能优化**:优化系统设置,如调整内核参数,优化数据库配置,以提升系统...

    Linux运维-运维工具箱-18个 Shell脚本经典案例-视频2-2.zip

    在Linux运维领域,Shell脚本是系统管理员的得力助手,能够自动化执行一系列命令,提高工作效率。本资源“Linux运维-运维工具箱-18个Shell脚本经典案例-视频2-2.zip”包含了18个实用的Shell脚本案例,帮助用户深入...

    linux-基于当前窗口和选定文本执行操作的Shell脚本

    在Linux环境中,Shell脚本是一种强大的工具,它允许用户通过编写简单的或复杂的命令序列来自动化日常任务。"基于当前窗口和选定文本执行操作的Shell脚本"是指一种特殊类型的脚本,这种脚本能够捕获用户在终端或GUI...

    Shell脚本获取本地网卡IP、mac地址、子网掩码、dns IP、外网IP

    在Linux系统中,Shell脚本是一种非常实用的工具,它能够帮助我们自动化执行一系列命令,以完成特定的任务。本文将详细介绍如何使用Shell脚本来获取本地网卡的IP地址、MAC地址、子网掩码、DNS服务器IP以及外网IP。...

    shell编程和unix命令

    例如,可以使用`echo`命令将文本写入文件,使用`sed`或`awk`进行文本处理,使用`curl`或`wget`从网络下载文件等。 **学习资源** 为了深入学习Shell编程和Unix命令,可以参考以下资料: - `man bash`:阅读Bash ...

    shell脚本批量删除es索引的方法

    这时,可以修改shell脚本,接收一个日期参数(格式为yyyy-MM-dd),用于指定删除的索引的最早日期。脚本会获取所有索引的信息,并对比每个索引的创建日期,如果日期小于或等于指定日期,则执行删除操作。同样,删除...

Global site tag (gtag.js) - Google Analytics