shell脚本通过curl来post命令json请求

        用shell脚本通过curl来发送post请求,然后关键字"shell curl json"搜到文章<linux shell中curl 发送post请求json格式问题>:"json数据里变量要用''括起来",然后在shell命令行上的确如此,然后在shell脚本中也是这样。但是当将json格式的数据赋值给某个变量report_info,然后通过$report_info来发送json数据的时候就不能再加上''了。并且json需要[]来包括起来。 
  利用curl上传文件至后台服务,关键字"shell curl 上传文件"搜到文章<curl 模拟 GET\POST 请求,以及 curl post 上传文件>,关键字"curl 上传文件 linux"搜到文章<linux使用curl上传文件并且同时携带其它传递参数>,后一篇文章中上传文件的key写错了,应该是file,参照第一篇文章成功实现文件上传。而且该文件POST 上传文件的时候也指定了token参数,token作为head参数。
       在虚拟机CentOS7.3.1611中通过go的pprof监听了6060端口,但是在win7中用chrome访问报错"10.10.x.x 拒绝了我们的连接请求",而且用cmd命令行的telnet 10.10.x.x 6060来访问也报错"无法打开到主机的连接。在端口6060:连接失败"。后来在虚拟机上"vim /etc/sysconfig/iptables",然后添加"-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 6060 -j ACCEPT",保存后执行"service iptables restart"就可以正常访问了。
       在shell中粗体显示,在stackoverflow上搜到文章<How does one output bold text in Bash?>,用"$(tput bold)"和"$(tput sgr0)"(恢复到正常显示)来控制显示。 <Linux Shell 数组建立及使用技巧>:一对括号表示是数组,数组元素用“空格”符号分割开。用${#数组名[@或*]} 可以得到数组长度;用${数组名[下标]} 下标是从0开始,下标是:*或者@ 得到整个数组内容。unset 数组[下标] 可以清除相应的元素,不带下标,清除整个数据。 
posted @ 2018-06-21 15:14  wongdu  阅读(15968)  评论(0编辑  收藏  举报