CURLコマンド

8384 ワード

ca証明書の生成openssl pkcs12 -in test.p12 -out test.crt
証明書アクセスの使用curl --cert test.p12:****** --cert-type P12 --cacert test.crt --header content-type:'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)' https://url
linux curlは、URLルールを使用してコマンドラインで動作するファイル転送ツールです.ファイルのアップロードとダウンロードをサポートするため、統合転送ツールですが、従来はurlをダウンロードツールと呼ぶ習慣があります.
一、curlコマンドパラメータ.-a/--append ,
-A/--user-agent <string>
- anyauth “ ”
-b/--cookie <name=string/file> cookie
- basic HTTP
-B/--use-ascii ASCII /
-c/--cookie-jar <file> cookie
-C/--continue-at <offset>
-d/--data <data> HTTP POST
--data-ascii <data> ascii post
--data-binary <data> post
--negotiate HTTP
--digest
--disable-eprt EPRT LPRT
--disable-epsv EPSV
-D/--dump-header <file> header
--egd-file <file> (SSL) EGD socket
--tcp-nodelay TCP_NODELAY
-e/--referer
-E/--cert <cert[:passwd]> (SSL)
--cert-type <type> (DER/PEM/ENG) (SSL)
--key <key> (SSL)
--key-type <type> (DER/PEM/ENG) (SSL)
--pass <pass> (SSL)
--engine <eng> (SSL). "--engine list" for list
--cacert <file> CA (SSL)
--capath <directory> CA (made using c_rehash) to verify peer against (SSL)
--ciphers <list> SSL
--compressed (using deflate or gzip)
--connect-timeout <seconds>
--create-dirs
--crlf LF CRLF
-f/--fail http
--ftp-create-dirs ,
--ftp-method [multicwd/nocwd/singlecwd] CWD
--ftp-pasv PASV/EPSV
--ftp-skip-pasv-ip PASV , IP
--ftp-ssl SSL/TLS ftp
--ftp-ssl-reqd SSL/TLS ftp
-F/--form <name=content> http
-form-string <name=string> http
-g/--globoff {} []
-G/--get get
-h/--help
-H/--header <line>
--ignore-content-length HTTP
-i/--include protocol
-I/--head
-j/--junk-session-cookies Cookie
- <interface> /
- krb4 < > krb4
-j/--junk-session-cookies session cookie
--interface <interface> /
--krb4 <level> krb4
-k/--insecure SSL
-K/--config
-l/--list-only ftp
--limit-rate <rate>
--local-port<NUM>
-m/--max-time <seconds>
--max-redirs <num>
--max-filesize <bytes>
-M/--manual
-n/--netrc netrc
--netrc-optional .netrc URL -n
--ntlm HTTP NTLM
-N/--no-buffer
-o/--output
-O/--remote-name ,
-p/--proxytunnel HTTP
--proxy-anyauth
--proxy-basic
--proxy-digest
--proxy-ntlm ntlm
-P/--ftp-port <address> , PASV
-Q/--quote <cmd> ,
-r/--range <range> HTTP/1.1 FTP
--range-file (SSL)
-R/--remote-time ,
--retry <num> ,
--retry-delay <seconds> ,
--retry-max-time <seconds> ,
-s/--silent 。
-S/--show-error
--socks4 <host[:port]> socks4
--socks5 <host[:port]> socks5
--stderr <file>
-t/--telnet-option <OPT=val> Telnet
--trace <file> debug
--trace-ascii <file> Like -- hex
--trace-time / ,
-T/--upload-file <file>
--url <URL> Spet URL to work with
-u/--user <user[:password]>
-U/--proxy-user <user[:password]>
-v/--verbose
-V/--version
-w/--write-out [format]
-x/--proxy <host[:port]> HTTP
-X/--request <command>
-y/--speed-time 。 30
-Y/--speed-limit , '
-z/--time-cond
-0/--http1.0 HTTP 1.0
-1/--tlsv1 TLSv1(SSL)
-2/--sslv2 SSLv2 (SSL)
-3/--sslv3 SSLv3(SSL)
--3p-quote like -Q for the source URL for 3rd party transfer
--3p-url url,
--3p-user ,
-4/--ipv4 IP4
-6/--ipv6 IP6
-#/--progress-bar
二、常用curl例
1ページの内容を1つのファイルにキャプチャcurl -o home.html http://www.mmcat.cn
2、-O(大文字)を使って、後ろのurlはあるファイルに具体的に行かなければなりません.そうしないと捕まえられません.正則で物を捕まえることもできます.curl -O http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
curl -O http://www.mmcat.cn/wp-content/uploads/2010/[0-9][0-9]/aaaaa.jpg

3,シミュレーションフォーム情報,シミュレーションログイン,クッキー情報の保存curl -c ./cookie_c.txt -F log=aaaa -F pwd=****** http://www.mmcat.cn/wp-login.php
4,シミュレーションフォーム情報,シミュレーションログイン,ヘッダ情報の保存curl -D ./cookie_D.txt -F log=aaaa -F pwd=****** http://www.mmcat.cn/wp-login.php
-c(小文字)が生み出すクッキーと-Dの中のクッキーは違います.
5,クッキーファイルを使うcurl -b ./cookie_c.txt  http://www.mmcat.cn/wp-admin6,ブレークポイント継続,-C(大文字)curl -C -O http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
7、データを転送して、登録ページでテストしたほうがいいです.あなたが値を転送した後、curlはデータを捕まえて、あなたが値を転送したかどうかを見ることができます.curl -d log=aaaa  http://www.mmcat.cn/wp-login.php
8,キャプチャエラーが表示され,以下の例では,明確に示されている.curl -f http://www.mmcat.cn/asdf
curl: (22) The requested URL returned error: 404
curl http://www.mmcat.cn/asdf

404,not found ............
9、ソースアドレスを偽造し、あるサイトが判断し、ソースアドレスを要求する.curl -e http://localhost http://www.mmcat.cn/wp-login.php
10、私达がいつもcurlで人のものをする时、人はあなたのIPを遮断して、この时、私达は代理店を使うことができますcurl -x 24.10.28.84:32779 -o home.html http://www.mmcat.cn
11、比較的大きいものは、私達は分割してダウンロードすることができますcurl -r 0-100 -o img.part1 http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   101  100   101    0     0    105      0 --:--:-- --:--:-- --:--:--     0
curl -r 100-200 -o img.part2 http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   101  100   101    0     0     57      0  0:00:01  0:00:01 --:--:--     0
curl -r 200- -o img.part3 http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100  104k  100  104k    0     0  52793      0  0:00:02  0:00:02 --:--:-- 88961
ls |grep part | xargs du -sh
4.0K    one.part1
112K    three.part3
4.0K    two.part2
使う時、彼らをcatしてすぐOKになって、cat img.part* >img.jpg curl -s -o aaa.jpg  http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg13、ダウンロード進捗バーを表示curl -# -O  http://www.mmcat.cn/wp-content/uploads/2010/09/compare_varnish.jpg
######################################################################## 100.0%
14、ftpでファイルをダウンロードcurl -u : -O http://www.mmcat.cn/demo/curtain/bbstudy_files/style.css
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
101  1934  101  1934    0     0   3184      0 --:--:-- --:--:-- --:--:--  7136

または以下の方法でcurl -O ftp:// : @ip:port/demo/curtain/bbstudy_files/style.css15、ftpでアップロードcurl -O ftp:// : @ip:port/demo/curtain/bbstudy_files/style.css12、ダウンロード進捗情報が表示されないcurl -T test.sql ftp:// : @ip:port/demo/curtain/bbstudy_files