54978
現在、複数のproxyアクセスのみが許された連番ページをダウンロードしています。

```

    seq 400 100000 | xargs -P100 -n1 -t -I {} \
    curl -s -o {}.html --retry 10 -x 192.168.20.3:1080 "https://192.168.1.5/page/"{}".php"'
    
```

又、別のファイルには以下のようにproxyリストが記述されており

```

    192.168.20.3:1080
    192.168.19.5:1080
    ...
    192.168.18.4:1080
    
```

1スレッド毎にランダムなproxyからアクセスさせたいのですが  
バッククォートを使用した方法

```

    seq 400 100000 | xargs -P100 -n1 -t -I {} \
    curl -s -o {}.html --retry 10 -x `shuf -n1 /home/home/proxy.list` "https://192.168.1.5/page/"{}".php"
    
```

`bash -c`を使用した方法等

```

    seq 400 100000 | xargs -P100 -n1 -t -I {} \
    bash -c 'curl -s -o {}.html --retry 10 -x $(shuf -n1 /home/home/proxy.list) https://192.168.1.5/page/{}.php'
    
```

上手くいきません。いい方法をご教授いただけますでしょうか。  
よろしくお願いします。
CC BY-SA 4.0
2019-05-15T08:37:40.177
54974
2019-05-15T12:12:57.187
34331
question
curl shell
xargs を使用した curl にてランダムなproxyを付与したい
自己解決しました。  
proxychains-ng にてランダムなproxyを与え

```

    random_chain
    chain_len = 1
    
    [ProxyList]
    http 192.168.20.3 1080
    http 192.168.19.5 1080
    ...
    http 192.168.18.4 1080
    
```

以下の様に実行する事でランダムなproxyになる事を確認しました。

```

    seq 400 100000 | xargs -P100 -n1 -t -I {} \
    proxychains curl -s -o {}.html --retry 10 "https://192.168.1.5/page/"{}".php"
    
```

ただし、proxychains-ngではオーバーヘッドが大きいです。
CC BY-SA 4.0
2019-05-15T09:32:15.040
54976
2019-05-15T09:32:15.040
34331
54974
answer
下記のように書くと希望通りに動くと思います。

```

    seq 400 100000 | xargs -P100 -n1 -t \
    sh -c 'curl -s -o "${1}.html" --retry 10 -x "$(shuf -n1 /home/home/proxy.list)" "https://192.168.1.5/page/${1}.php"' _
    
```
CC BY-SA 4.0
2019-05-15T12:12:57.187
54978
2019-05-15T12:12:57.187
25936
54974
answer