Bash 使用xargs时将文本行从输入文件复制到输出文件

Bash 使用xargs时将文本行从输入文件复制到输出文件,bash,xargs,Bash,Xargs,我有一个正在工作的shell脚本,它读取一个包含URL的文本文件,每个URL位于单独的一行。URL从文件中并行读取,并检查其状态代码,其中响应写入status-codes.csv 如何将URL-list.txt中引用的原始URL写入status-codes.csv中输出的第一列 status-code.sh #!/bin/bash xargs -n1 -P 10 curl -u user:pass -L -o /dev/null --silent --head --write-out '%{ur

我有一个正在工作的shell脚本,它读取一个包含URL的文本文件,每个URL位于单独的一行。URL从文件中并行读取,并检查其状态代码,其中响应写入status-codes.csv

如何将URL-list.txt中引用的原始URL写入status-codes.csv中输出的第一列

status-code.sh

#!/bin/bash
xargs -n1 -P 10 curl -u user:pass -L -o /dev/null --silent --head --write-out '%{url_effective},%{http_code},%{num_redirects}\n' < url-list.txt | tee status-codes.csv
status-codes.csv(当前输出)

status-codes.csv(所需输出)


使用
-I
选项。例如:

xargs -n1 -P 10 -I '{}' curl -u user:pass -L -o /dev/null --silent --head --write-out '{},%{url_effective},%{http_code},%{num_redirects}\n' '{}' < url-list.txt | tee status-codes.csv
xargs-n1-p10-I'{}curl-u用户:pass-L-o/dev/null--silent--head--write'{}、%%{url\u effective}、%%{http\u code}、%%{num\u redirects}\n'{}
man xargs

-我替换str 用从标准输入读取的名称替换初始参数中出现的Replace str

http://website-url.com/path-to-page-2,200,1
http://website-url.com/path-to-page-after-any-redirects,200,2
http://website-url.com/404,404,2
http://website-url.com/path-to-page-2,http://website-url.com/path-to-page-2,200,1
http://website-url.com/path-to-page-1,http://website-url.com/path-to-page-after-any-redirects,200,2
http://website-url.com/path-to-page-3,http://website-url.com/404,404,2
xargs -n1 -P 10 -I '{}' curl -u user:pass -L -o /dev/null --silent --head --write-out '{},%{url_effective},%{http_code},%{num_redirects}\n' '{}' < url-list.txt | tee status-codes.csv