背景:交易所每天发文件给券商,但是前缀一样,名字后缀为月日,但是节假日不一定在交易日生成某些文件,所以需要获取同名字最新生成的文件
参数说明:
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 “*”, 目录则加 “/”
-R 若目录下有文件,则以下之文件亦皆依序列出
方法来源:https://zhidao.baidu.com/question/1863998506883494627.html
ls -alt #文件夹名#,这个是降序排列,如果要找最新的,补上管道符号就成了
ls -alt #文件夹名# | head -n 5 ##列出的是最新改动的四个,第一行记录总用量,所以只有4个
shel脚本:在指定路径下根据511800*这个名字搜索最新生成的文件然后cp到指定路径
#!/bin/bash
ETF_511800=`ls -at /home/file/unitrans/file/511800* | head -n 1`
cp -rf $ETF_511800 /home/test
亲测有效