Shell 如何包含动态文件名?
我想获取一个具有动态文件名的文件 我不知道如何改变的动态部分是invest97e。是否可以使用通配符,或者是否需要读取索引文件 这是我目前的剧本Shell 如何包含动态文件名?,shell,loops,filenames,wget,Shell,Loops,Filenames,Wget,我想获取一个具有动态文件名的文件 我不知道如何改变的动态部分是invest97e。是否可以使用通配符,或者是否需要读取索引文件 这是我目前的剧本 #!/bin/sh # # variables # basedir="http://www.ftp.ncep.noaa.gov/data/nccf/com/hur/prod/hur." date=`date +"%Y%m%d"` datetime="${date}00" basename="{*}.${datetime}.grib.f" i=0
#!/bin/sh
#
# variables
#
basedir="http://www.ftp.ncep.noaa.gov/data/nccf/com/hur/prod/hur."
date=`date +"%Y%m%d"`
datetime="${date}00"
basename="{*}.${datetime}.grib.f"
i=0
hh="00"
#
# main
#
while [ $hh != "126" ]
do
hh=`printf "%0.2d" $i`
echo $hh
i=`expr $i + 6`
url="${basedir}${basename}${hh}.grib2"
wget -P /awips2/edex/data/manual/ $url
done;
这个名字有什么意义吗?这个名字真的变化很大吗?prod下似乎只有两个hur文件夹,一个旧的是96e,一个新的是97e,但即使是新的也有六个月了。名称将定期更改。不同的数字不一定相同。例如,名字可以是阿尔伯特或克里斯塔。文件名的其余部分将与提供的链接中标识为f00的数据和小时相同。该名称对应于活跃的热带天气系统。如果系统尚未命名,则称为invest。这些文件现在很旧,但很快就会改变的。这就解释了当时相对缺乏数据的原因。如果名称没有模式,或者没有通过其他渠道找到名称的方法,那么是的,您需要使用索引。也就是说,您可以尝试通过使用具有适当模式和限制的spidering模式让wget为您完成工作。