作者jacky1989 ()
看板Perl
标题[问题] sleep与-e搭配应用
时间Wed Jun 11 01:26:39 2025
as title
我写一段简单程式去判断档案是否存在
如果存在就做下一步这样
wait.pl
#!/usr/bin/perl
while(1){
if(-e $ARGV[0]){
printf("File exist.\n");
exit;
}
sleep(60);
}
我自己使用没问题,但同仁用了以後我就被公司的IT部门碎念了
他说我的程式卡住执行绪,要我修改
但我自己左看右看,应该都没问题
以top检查,也是没有卡住
但以ps检查就出现一堆死掉的执行绪
我这样检查 ps -aef|grep wait.pl
由於我们是许多台server串起来使用
所以档案不一定在本机硬碟
有可能档案还symbollic link到其他硬碟去
所以实际执行可能会这样打
/server3/disk1/userA/bin/wait.pl /server1/disk0/dir1/list.log
list.log这个档案可能是存在server2的disk2这样
所以会变成
list.log -> /server2/disk2/list.log
因此我想问,我这样想法会造成卡住执行绪的问题吗?
先感谢大家,如果看不懂,我再补充
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.124.65.196 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Perl/M.1749576401.A.121.html