CURL的基本用法说明文档(含详细代码)
Curl基本用法总结如下:
CURL是一个超强的命令行工具,其功能非常强大,有Linux/Unix版本的,也有Windows版本的,我平时就经常在Windows下面使用curl做一些测试,非常方便,有时用curl做测试比用浏览器做测试要快得多,方便得多。
1.curl命令帮助选项
C:\>curl --help
Usage: curl [options...]
Options: (H) means HTTP/HTTPS only, (F) means FTP only
-a/--append Append to target file when uploading (F)
-A/--user-agent
--anyauth Tell curl to choose authentication method (H)
-b/--cookie
-B/--use-ascii Use ASCII/text transfer
-c/--cookie-jar
-C/--continue-at
-d/--data HTTP POST data (H)
--data-ascii HTTP POST ASCII data (H)
--data-binary HTTP POST binary data (H)
--negotiate Enable HTTP Negotiate Authentication (H)
--digest Enable HTTP Digest Authentication (H)
--disable-eprt Prevent curl from using EPRT or LPRT (F)
--disable-epsv Prevent curl from using EPSV (F)
-D/--dump-header
--egd-file
--tcp-nodelay Set the TCP_NODELAY option
-e/--referer Referer URL (H)
-E/--cert
--cert-type
--key
--key-type
--pass
--engine
--cacert
--capath
peer against (SSL)
--ciphers SSL ciphers to use (SSL)
--compressed Request compressed response (using deflate or gzip)
--connect-timeout
--create-dirs Create necessary local directory hierarchy
--crlf Convert LF to CRLF in upload
-f/--fail Fail silently (no output at all) on errors (H)
--ftp-create-dirs Create the remote dirs if not present (F)
--ftp-pasv Use PASV instead of PORT (F)
--ftp-ssl Enable SSL/TLS for the ftp transfer (F)
-F/--form
-g/--globoff Disable URL sequences and ranges using {} and []
-G/--get Send the -d data with a HTTP GET (H)
-h/--help This help text
-H/--header
-i/--include Include protocol headers in the output (H/F)
-I/--head Show document info only
-j/--junk-session-cookies Ignore session cookies read from file (H) --interface
--krb4
-k/--insecure Allow curl to connect to SSL sites without certs (H)
-K/--config Specify which config file to read
-l/--list-only List only names of an FTP directory (F)
--limit-rate
-L/--location Follow Location: hints (H)
--location-trusted Follow Location: and send authentication even
to other hostnames (H)
-m/--max-time
--max-filesize
-M/--manual Display the full manual
-n/--netrc Must read .netrc for user name and password --netrc-optional Use either .netrc or URL; overrides -n
--ntlm Enable HTTP NTLM authentication (H)
-N/--no-buffer Disable buffering of the output stream
-o/--output
-O/--remote-name Write output to a file named as the remote file
-p/--proxytunnel Operate through a HTTP proxy tunnel (using CONNECT) --proxy-anyauth Let curl pick proxy authentication method (H)
--proxy-basic Enable Basic authentication on the proxy (H)
--proxy-digest Enable Digest authentication on the proxy (H)
--proxy-ntlm Enable NTLM authentication on the proxy (H)
-P/--ftp-port
Use PORT with address instead of PASV (F)-q If used as the first parameter disables .curlrc
-Q/--quote
-r/--range
-R/--remote-time Set the remote file's time on the local output
--retry
--retry-delay
-s/--silent Silent mode. Don't output anything
-S/--show-error Show error. With -s, make curl show errors when they occur --socks
--stderr
-t/--telnet-option
--trace
--trace-ascii
-T/--upload-file
--url
-u/--user
-U/--proxy-user
-v/--verbose Make the operation more talkative
-V/--version Show version number and quit
-w/--write-out [format] What to output after completion
-x/--proxy
-X/--request
-y/--speed-time Time needed to trig speed-limit abort. Defaults to 30
-Y/--speed-limit Stop transfer if below speed-limit for 'speed-time' secs
-z/--time-cond
-0/--http1.0 Use HTTP 1.0 (H)
-1/--tlsv1 Use TLSv1 (SSL)
-2/--sslv2 Use SSLv2 (SSL)
-3/--sslv3 Use SSLv3 (SSL)
--3p-quote like -Q for the source URL for 3rd party transfer (F)
--3p-url source URL to activate 3rd party transfer (F)
--3p-user user and password for source 3rd party transfer (F)
-4/--ipv4 Resolve name to IPv4 address
-6/--ipv6 Resolve name to IPv6 address
-#/--progress-bar Display transfer progress as a progress bar
2.查找页面源代码中的指定内容
例如查找京东商城首页含有js的代码
C:\>curl https://www.doczj.com/doc/5f10746115.html, | find "js"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
19 158k 19 31744 0 0 53531 0 0:00:03 --:--:-- 0:00:03 65947
76 158k 76 121k 0 0 10763 0 0:00:15 0:00:11 0:00:04 7574
宿迁
99 158k 99 158k 南通
100 158k 100 158k 0 0 12557 0 0:00:12 0:00:12 --:--:-- 18859