cURL:从PHP到BASH

fli*_*een 5 php bash curl transform

我以前从未做过任何卷曲,所以需要一些帮助.

PHP:

<?php
$ch = curl_init();

$data = array(
        'uptype'=>'file',
        'file'=>'@'.$argv[1],
);

curl_setopt($ch, CURLOPT_URL, 'http://my_site_ex/up.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_exec($ch);
curl_close($ch);
?>
Run Code Online (Sandbox Code Playgroud)

如何在BASH中创建相同的脚本?

Mat*_*hen 5

我相信它是:

curl -F "uptype=file" -F "file=@$1" 'http://my_site_ex/up.php'
Run Code Online (Sandbox Code Playgroud)

-F使用multipart/form-data,如果为CURLOPT_POSTFIELDS传递数组,则PHP接口libcurl会使用它.每个-F是一个单独的字段.libcurl读取您指定的文件@.