
shell编程:
如果你为每个文件按日期命名的格式都一致的话,那么”ls -l“命令列出的文件列表就是默认按文件名称(日期先后)排序的。那么最后一个就是最新的,文件名可以用以下方式获取。
filename=‘ls -l | tail -n 1 | awk '{print $9}'’
转移文件用 mv 命令即可
逐条解释:
ls -lt /dirname/
列出此目录下的所有文件并按照时间先后排序
grep filename
过滤出包含关键字的文件
head -n 1
查看排名第一的文件
awk '{print $9}'
打印出第九字段,此处为文件名
#/bin/shfunction tmp_fun()
{
echo "press Enter to continue or other key to exit"
read -n 1 _tmp_key
echo "$tmp_key"
if [ "$_tmp_key" != "^@" ] then #这里的^@是以ctrl+v,ctrl+Enter打印的,中间ctrl不放
exit 0
else
cd a #这里是a文件夹,具体路径自己写
vi `find . -name "text.txt" -printf "%AD %AT %f\n"|sort|tail -1|cut -d " " -f3` #这里用时vi打开的。
fi
}
#statement 这里是你前一段命令,可以在这里自己加判断执行后面的
tmp_fun
#说明:没加错误处理。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)