我需要從遠處的服務器獲取列表中指定的一組文件。我使用了Matlab腳本(在Centos6機器上):wget from matlab腳本 - 卡住的線程
for k=1:length(u_list)
o_name = fullfile(outFolder, names{k});
i_name = u_list{k}.url;
[status, result] = unix(['wget -O ' o_name ' ' i_name]);
end
這不起作用。 我得到很多的wget進程陷入
ps aux |grep wget
顯示了很多wget的情況下的堅持,以及一些文件不通過。在我看來,麻煩在於matlab沒有等待'system'調用返回。 有什麼建議嗎?
編輯:這個網址有一個excape字符'&'。 正在操作: unix(['wget -O'o_name'--timeout = 100''i_name''''));
沒有辦法。
這真的很奇怪 - 手冊中明確指出:*在將命令的退出狀態返回到狀態變量之前,操作等待命令完成**執行。*您使用的是哪個Matlab版本以及哪個wget?難道你的名字中包含需要轉義的'&'? – bdecaf 2014-09-10 10:02:18
啊,你說得對。該網址包含&。 我在i_name周圍添加了''',一切正常... – mousomer 2014-09-10 10:14:20