我正在Bash,Solaris中编写一个Shell脚本。
我正在尝试获取与特定文件模式匹配的最新文件,并将其覆盖。
我一直在阅读,而且大多数实现都基于ls命令,这对于有趣的角色来说效果不佳。我正在寻找可以与我迄今所写的内容相配合的替代方案。
for i in {1..5}
do
for GMSFILE in $srcpath/KMS_MSEA_StatusAllocation_A*Y*.gms
do
if [ -e "$GMSFILE " ]
then
#GMS File Exist
TXTFILE=${GMSFILE %%.*}.txt
# Find same file name with txt extension now
if [ -f "$TXTFILE" ]
then
echo $TXTFILE
#scp -P 22 $GMSFILE $id@$ip:$destpath #>> $log 2>&1
break 2
fi
else
sleep 5
fi
done
done
答案 0 :(得分:0)
您可以使用带有date
选项的-r
命令来显示上次修改文件的时间。获得文件列表后,可以使用date -r $TXTFILE +%s
获取上次修改文件的Unix日期戳。一旦知道列表中哪个值是最新的,您就可以选择从列表中复制该项目。