在linux下使用curl访问 多参数url GET参数问题
一、在Crontab中使用PHP执行脚本
就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本。
每一小时执行myscript.php如下:
- # crontab -e
- 00 * * * * /usr/local/bin/php /home/john/myscript.php
/usr/local/bin/php为PHP程序的路径。
二、在Crontab中使用URL执行脚本
如果你的PHP脚本可以通过URL触发,你可以使用lynx或curl或wget来配置你的Crontab。
下面的例子是使用Lynx文本浏览器访问URL来每小时执行PHP脚本。Lynx文本浏览器默认使用对话方式打开URL。但是,像下面的,我们在lynx命令行中使用-dump选项来把URL的输出转换来标准输出。
- 00 * * * * lynx -dump https://www.centos.bz/myscript.php
下面的例子是使用CURL访问URL来每5分执行PHP脚本。Curl默认在标准输出显示输出。使用”curl -o”选项,你也可以把脚本的输出转储到临时文件。
- */5 * * * * /usr/bin/curl -o temp.txt https://www.centos.bz/myscript.php
下面的例子是使用WGET访问URL来每10分执行PHP脚本。-q选项表示安静模式。”-O temp.txt”表示输出会发送到临时文件。
- */10 * * * * /usr/bin/wget -q -O temp.txt https://www.centos.bz/myscript.php
url 为 http://mywebsite.com/index.php?a=1&b=2&c=3
web形式下访问url地址,使用$_GET是可以获取到所有的参数
然而在Linux下
curl http://mywebsite.com/index.php?a=1&b=2&c=3
$_GET只能获取到参数a
由于url中有&,其他参数获取不到,在linux系统中& 会使进程系统后台运行
必须对&进行下转义才能$_GET获取到所有参数
curl http://mywebsite.com/index.php?a=1\&b=2\&c=3
url 为 http://mywebsite.com/index.php?a=1&b=2&c=3
web形式下访问url地址,使用 $_GET是可以获取到所有的参数
curl -s http://mywebsite.com/index.php?a=1&b=2&c=3
然而在linux下,上面的例子 $_GET只能获取到参数 a
由于url中有&其他参数获取不到,在linux系统中 &会使进程系统后台运行
必须对 &进行下转义才能 $_GET获取到所有参数
curl -s http://mywebsite.com/index.php?a=1\&b=2\&c=3
当然,最简单的方法 用双引号把整个url引起来就ok了
curl -s "http://mywebsite.com/index.php?a=1&b=2&c=3"
# 顺便再提一下 curl 中 post 传参数的方法
curl -d 'name=1&pagination=2'demoapp.sinap.com/worker.php
# 这样 demoapp.sinap.com 站点中的 worker.php 脚本,就能得到 $_POST['name'] 和 $_POST[''pagination] 对应的值
# 再补充下curl获得网站信息的方法( -s 表示静默 --head 表示取得head信息 )
curl -s --head www.sina.com
转自:http://blog.csdn.net/zhangjunguo0320/article/details/52058712
在linux下使用curl访问 多参数url GET参数问题的更多相关文章
- linux 下使用 curl 访问带多参数,GET掉参数解决方案
url 为 http://mywebsite.com/index.php?a=1&b=2&c=3 web形式下访问url地址,使用 $_GET是可以获取到所有的参数 curl -s ...
- linux下通过curl访问web服务器
在通过xshell或者其他远程连接工具连接linux服务器,没安装浏览器,却要测试web服务的请求: 可以使用curl 访问web服务器 例如返回百度的主页内容 #curl www.baidu.com ...
- Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码)
Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码) http://blog.csdn.net/helonsy/article/details/7207497 ...
- linux下又一次定位svn url方法
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/oudahe/article/details/34437661 linux下又一次定位svn url方 ...
- Linux下使用curl进行http请求(转)
curl在Linux下默认已经安装,Windows需要自行安装. 下载地址:https://curl.haxx.se/download.html Windows离线版本:链接:http://pan.b ...
- linux下测试web访问及网络相关的命令
curl命令 curl是linux系统命令行下用来简单测试web访问的工具. curl -xip:port www.baidu.com -x可以指定ip和端口,省略写hosts,方便实用 -I ...
- Linux入门培训教程 linux下拷贝cp删除rm移动mv命令参数以及说明
拷贝移动删除在windows中看起来这么简单,但linux经常使用的文字界面,所以对于linux系统 下拷贝cp删除 rm 移动mv命令参数就不得不需要了解和学习了 cp 该命令的功能是将给出的文件或 ...
- linux下tomcat无法访问问题(换一种说法:无法访问8080端口)
有时候linux下的tomcat其他机器无法访问,比如主机无法访问linux虚拟机的tomcat,这是因为tocat的端口,linux没有对外开放,所以只能localhost访问,但是别的机器访问不了 ...
- opencv 4.0 + linux下静态编译,展示详细ccmake的参数配置
#先安装 cmake 3.14 # cmake安装到了 /usr/local/bin #配置PATH export PATH="$PATH:/usr/local/bin" #下载最 ...
随机推荐
- .Net mvc 根据前台参数动态绑定对象
业务需求:根据前台界面的参数,动态绑定对象 <param name="colNames">属性名拼接字符串</param><param name=&q ...
- read properties
读取配置文件在项目中使用频率很大,但是实际项目中各种人,各种用法,五花八门,往往是一种方式的各种变体,然很多种方式是其中一种方式的复杂化.今天我来总结下读取配置文件的集中方式及一些不能靠copy代码能 ...
- Appium环境搭建+cordova
1.安装JDK 配置JAVA_HOME(变量值为jdk的安装目录)以及Path path值如下: 验证是否生效 2.安装node.js 选择适合自己的版本官网直接下载https://nodejs.or ...
- sublime 插件推荐: Nettuts+ Fetch
Nettuts+ Fetch github地址:Nettuts-Fetch 在sublime中直接用 ctrl+shift+P -> pci -> Nettuts-Fetch 即可下载 这 ...
- MVC中得到成员元数据的Description特性描述信息公用方法
#region 从类型成员获取指定的Attribute T特性集合 /// <summary> /// 从类型成员获取指定的Attribute T特性集合 /// </summary ...
- FragmentTabHost + Fragment 使用小记
由于业务需要,需要在使用Activity的顶部使用一个导航栏,点击导航栏的tab,下面显示内容.决定采用项目中已经使用过的FragmentTabHost + Fragment的方式实现.不同的是之前的 ...
- django的cookie和session以及内置信号、缓存
cookie和session cookie和session的作用: cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话.两者最大的区别是cookie的信息是存放在浏览 ...
- Chrome 开发工具之Network
经常会听到比如"为什么我的js代码没执行啊?","我明明发送了请求,为什么反应?","我这个网站怎么加载的这么慢?"这类的问题,那么问题既然 ...
- 使用charles V3.11.2 实现SSL抓包
首先,确认开启了SSL选项: 然后到Help->SSL Proxying里查看帮助; 根据提示,将android手机连接到局域网的wifi上,然后将wifi连接的代理设置为192.168.21. ...
- 疯狂Java笔记
第四章: 4.6深入数组 1.栈内存和堆内存 每个方法都会建立自己的内存栈,在这个方法内定义的变量会逐个放入栈内存里,随着方法的执行结束,这个方法的内存栈也将自然销毁.因此,所有在方法中定义的局部变量 ...