我需要在k 脚本中获取wget
调用的输出。aw
但是,由于某种原因,wget
当我使用双向 I/O时调用失败。
我的尝试是(以 MWE 形式):
使用循环捕获多行:
echo http://www.del-rio.net/images/festival/medium/2000_0516_Ellen_Burstyn_1274-1-4.jpg | awk '{
cmd = "wget -t 1 $0";
while ( (cmd | getline line) > 0 ){
result = result " " line;
}
print result;
close (cmd);
}'
并使用单行。这个我尝试过使用和不使用非详细选项,因为带有-nv
选项的 wget 调用仅返回一行。
echo http://www.del-rio.net/images/festival/medium/2000_0516_Ellen_Burstyn_1274-1-4.jpg | gawk '{
"wget -t 1 -nv $0" | getline line;
print line;
}'
但是,在这两种情况下,它都会停止并给出消息:
--22:09:09-- http://sh/
=> `index.html'
Resolving sh... failed: Host not found.
难道我做错了什么?还是wget
在这种管道模式下不起作用?在那种情况下,如何在awk
脚本内的变量中获取调用结果。