在 xargs 中转义字符 '
Escape character ' inside xargs
你好我想运行这个命令:
cat webs.txt | xargs -n1 -P8 bash -c 'curl -ks -x http://127.0.0.1:8080 -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'" [=10=] -m 4 1>/dev/null'
我在这里遇到了麻烦:Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68 .0' 加上“'”字符,我试过:
cat webs.txt | xargs -n1 -P8 bash -c 'curl -ks -x http://127.0.0.1:8080 -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0\'" [=11=] -m 4 1>/dev/null'
但这不起作用,我想要的是像这样附加'":
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'"
此致
你可以试试这个xargs
:
xargs -n1 -P8 bash -c "url=\"$0\"; \
curl -ks -x http://127.0.0.1:8080 -A \"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'\" $url -m 4 1>/dev/null" {} < webs.txt
你快到了,一些引用修复应该可以正常工作(那里的小调整像 -o/dev/null
而不是重定向,向前移动 -m4
):
cat webs.txt | xargs -n1 -P8 bash -c 'curl -m4 -ks -x http://127.0.0.1:8080 -o/dev/null -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" [=10=]'
你好我想运行这个命令:
cat webs.txt | xargs -n1 -P8 bash -c 'curl -ks -x http://127.0.0.1:8080 -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'" [=10=] -m 4 1>/dev/null'
我在这里遇到了麻烦:Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68 .0' 加上“'”字符,我试过:
cat webs.txt | xargs -n1 -P8 bash -c 'curl -ks -x http://127.0.0.1:8080 -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0\'" [=11=] -m 4 1>/dev/null'
但这不起作用,我想要的是像这样附加'":
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'"
此致
你可以试试这个xargs
:
xargs -n1 -P8 bash -c "url=\"$0\"; \
curl -ks -x http://127.0.0.1:8080 -A \"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0'\" $url -m 4 1>/dev/null" {} < webs.txt
你快到了,一些引用修复应该可以正常工作(那里的小调整像 -o/dev/null
而不是重定向,向前移动 -m4
):
cat webs.txt | xargs -n1 -P8 bash -c 'curl -m4 -ks -x http://127.0.0.1:8080 -o/dev/null -A "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" [=10=]'