在Linux下找出多个文件中最新的那个文件

问:在Linux下怎么找出多个文件(比如*.cpp)中最新的那个文件?

 

答:可以采用如下命令形式

(1)将文件按从新到旧排列,取第一个。

ls -t *.cpp | head -1

(2)将文件按从旧到新排列,取最后一个。

ls -rt *.cpp | tail -1


执行示例:

[root@jfht synway]# ls -lrt *.cpp
-rw-r--r-- 1 root root   246 2007-09-12 ch_set.cpp
-rw-r--r-- 1 root root 10073 2008-11-04 ssv_codec.cpp
-rw-r--r-- 1 root root  2199 2008-11-04 main.cpp
-rw-r--r-- 1 root root   600 2008-11-04 config.cpp
-rw-r--r-- 1 root root  2533 2008-11-07 syn_thread.cpp
-rw-r--r-- 1 root root   998 2008-11-07 ssv_server.cpp
-rw-r--r-- 1 root root  5301 2008-11-07 ctsc_session.cpp
-rw-r--r-- 1 root root  9692 2008-11-07 ctmc_session.cpp
-rw-r--r-- 1 root root 83121 2010-06-30 ch_info.cpp

从上面的输出来看,显然ch_info.cpp是最新的。
[root@jfht synway]# ls -t *.cpp | head -1
ch_info.cpp
[root@jfht synway]# ls -rt *.cpp | tail -1
ch_info.cpp
[root@jfht synway]#

编写成脚本执行,如下所示:

[root@jfht synway]# vi newest_file.sh
#!/bin/sh

newest_file_of()
{
        ls -t "$@" | head -1
}

echo "newest file of *.cpp is $(newest_file_of *.cpp)"

[root@jfht synway]# ./newest_file.sh  
newest file of *.cpp is ch_info.cpp
[root@jfht synway]#

 

 

上述命令的详细解释:

 

ls -t

按修改时间排序,较新的文件排在前面(sort by modification time),也就是按照从新到旧排序。如果要按照从旧到新排序,则需要增加-r参数(逆序)。

man ls 写道
-l     use a long listing format

-r, --reverse
     reverse order while sorting

-t   sort by modification time
 

 

head -1

取第一行。也可以写作:head -n 1。

man head 写道
-n, --lines=[-]N
     print the first N lines instead of the first 10; with the leading ‘-’, print all but the last N lines of each file
 

 

tail -1

取最后一行。也可以写作:tail -n 1。

man tail 写道
-n, --lines=N
     output the last N lines, instead of the last 10
 

本文链接:http://codingstandards.iteye.com/blog/1154520

 

 

Linux unzip解压多个文件 最近下载了imagenet1k数据集,令人难受的是这里边有很多的zip包,我总不能一个一个解压吧,这就太费时了,有点程序员思维很重要:批量解压。 阅读详情

相关推荐

linux之找出两个文件里面相同的数据

1 问题 找出2个文件里面重复的数据(这个问题是csdn排名第一的大神stpeace的专栏在微信里面和我的交流,我当时一脸懵逼) 文件a.txt文件内容如下 cat a.txt 123 123 234 345 456 文件b.txt文件内容如下 cat b.txt 234 345 456 789 789 两个文件重复的数据如下 234 345 456 ...

码莎拉蒂 1万+

Linux下获得某个目录下最新生成的文件的方法

参考:https://www.cnblogs.com/dst5650/p/5842881.html 在程序中需要对最新生成的文件进行处理,可以采用如下的脚本 filename=`ls-t dir|head-n1|awk'{print $0}'` echo$filename 返回的filename即为dir目录下最新生成的文件名 ...

星光 2869

3D Slicer-最强大的开源医学图像分割工具简要概述

3D Slicer 是一个免费的开源软件平台,用于医学、生物医学和其他 3D 图像的可视化、处理、分割、配准和分析。读/写DICOM图像和多种其他格式;三维图像、多边形网格和体积渲染的交互式可视化;手动编辑和标记图像;使用刚性和非刚性算法融合和共同配准数据;图像自动分割;跟踪图像引导程序的设备。所有的功能模块可在工具栏里找到,提供搜索,下拉选择,左右切换等功能。3D slicer的大概情况就介绍到这里。它的功能非常强大,也没有必要说掌握每个功能的使用。

Tina姐的博客 2万+

在Linux中查找和删除重复文件的4种方法

大神教你在Linux中查找和删除重复文件的4种方法 在本教程中,您将学习如何使用rdfind和fdupes命令行工具以及称为DupeGuru和FSlint的GUI工具在Linux中查找和删除重复文件。 如果您习惯于从网络下载各种内容,则整理您的主目录甚至系统可能会特别困难。 您可能会发现自己下载了相同的mp3,pdf,zip(以及所有其他类型的文件扩展名)并将其复制到其他目录。这可能会导致...

Linux和Eda技术分享 1323

全球尺度遥感云计算平台:Google Earth Engine

Google Earth Engine(GEE)是一个基于 Google 云服务基础设施的遥感大数据分析平台,它结合 Google 强大的云计算能力与 NASA、ESA、NOAA 等机构的空间数据,用于在全球尺度解决一些非常重要的社会问题:森林退化、粮食安全、灾害预警、水资源管理、气候监测以及环境保护等。 GEE 官方宣传视频(版权归 Google 所有) Spacefan 的视频 ·303播放 发展背景 2008 年,手握 40 多年 LandSat 数据的美国地质调查局(USG...

qq_41240287的博客 5013

STM32F4_DHT11数字温湿度传感器

开机的时候先检测是否有DHT11存在,如果没有,则提示错误。DHT11和DS18B20相同,传感器输出的都是未编码的二进制数字。本节我们将利用STM32F4来读取DHT11的温湿度传感器,获取环境的温度和湿度值。因此:温湿度的读取方式就是整数部分的二进制转换成十进制放在整数部分;小数部分的二进制转换成十进制放在小数部分。DHT11和MCU的一次通讯时间最大3ms,主机连续向DHT11采样的间隔建议不小于100ms。DHT11是广州奥松有限公司生产的一款温湿度一体化的数字传感器。数据分小数部分和整数部分。

light_2025的博客 3431

linux的find找出最新的文件,快速找到最近修改的文件!

导读在本文中,我们将解释两个简单的命令行小技巧,它可以帮你只列出所有的今天的文件。Linux 用户在命令行上遇到的常见问题之一是定位具有特定名称的文件,如果你知道确定的文件名则可能会容易得多。不过,假设你忘记了白天早些时候创建的文件的名称(在你包含了数百个文件的home文件夹中),但现在你有急用。下面用不同的方式只列出所有你今天创建或修改的文件(直接或间接)。1、 使用 ls 命令,只列出你的 h...

weixin_28861381的博客 1万+

25个Prompt去除AI味,让AI写作更像真人

自然语言生成技术飞速发展,如今AI写作已经深度融入内容创作、营销运营和日常办公。但许多用户发现,AI生成的文本常常带着一股“AI味”——句子过于工整、过度总结、细节空洞,导致内容被一眼识破,甚至面临“AI率”过高的尴尬。其实,这种塑料感源于大模型的训练数据与对齐机制,它偏好生成结构完整、逻辑平滑的“安全文本”。要解决这一问题,核心不在于更换工具或复杂调参,而在于掌握提示词工程的底层逻辑:通过限制结构、注入细节、切换视角、打乱顺序等具体指令,引导模型生成更接近人类表达习惯的文本。本文基于实战经验,提供25个可

weixin_26824299的博客 258

Linux命令行中判断多个文件或目录是否存在 C语言实现

#在Linux命令行中判断多个文件或目录是否存在 Linux命令行中判断多个文件或目录是否存在 制作一个小程序,实现查看文件/目录/文件路径是否存在,并且能 够同时判断多个。 Linux C语言程序 命令行输入 显示结果 ...

calebcay的博客 1795

微信公众号数据采集实战:历史文章、互动数据与评论详情全解析

本文提供了一套完整的微信公众号数据采集实战方案,详细解析了如何通过接口调用获取公众号的历史文章列表、单篇文章的互动数据以及详细的用户评论。文章从环境准备、核心参数解析到分页逻辑、批量处理和异常处理,提供了可运行的Python代码示例,旨在帮助开发者高效、稳定地构建自动化采集工具,用于竞品分析、内容研究和舆情监控。

u5v6w7的博客 1594

【STM32实物】基于STM32+ESP32+手机APP设计的智能宠物喂食系统

本文以STM32单片机为主控MCU,配有压力传感器、温湿度传感器、光照强度传感器、蜂鸣器等,设计了一款可以远程控制的宠物智能喂食系统。用户可以通过APP下达指令,控制宠物的喂食。每天可以根据设置的数据进行精准喂食,成本相对较低的宠物喂食装置。该装置使用步进电机控制投食仓门的开闭,通过压力传感器和时钟系统控制每日的投喂量和投喂时间。每次投食后蜂鸣器会提醒宠物进食,树立每日定点进食的习惯。经测试得出,该设备确实能实现每日定时定量投喂。系统整体运行顺畅,所有预期功能得以实现。它非常适合解决宠物主人不在家时影响宠物

嵌入式阿齐Archie 2万+

在Linux下怎么找出多个文件(比如*.cpp)中最新的那个文件?

在Linux下怎么找出多个文件(比如*.cpp)中最新的那个文件?

Mona_More的博客 1032

YOLOv11 结合 BiFormer 注意力:打造多场景高精度检测模型实战教程

注册BiFormer模块(若代码未自动注册)# 加载自定义配置的YOLOv11模型。

know_F0727的博客 251

linux下找到指定目录下最新日期log文件

此实现能正确处理您提供的示例文件列表,并返回最新文件(如 "2025-08-15_11-07-58.log")。通过字符串比较找到时间戳最新的文件(文件名越大表示时间越新):最新日志文件的完整路径(动态分配的内存,需调用者释放):日志目录路径 (如 "/appdata/log")遍历所有文件,跳过 "." 和 ".."函数仅基于文件名判断,不检查文件修改时间。使用正则表达式验证文件名是否符合。验证文件名格式是否符合日志文件规范。返回的路径字符串需要调用者释放内存。确保只处理符合命名规范的日志文件。

luoqice的博客 556

【推荐系统】推荐算法:冷启动-召回-粗排-精排-重排 解读

【推荐系统】推荐算法:冷启动-召回-粗排-精排-重排 解读

Danger的博客 3760

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Linux递归找出目录下最近被修改文件(最近一段时间内被修改过的最新文件)(最近修改文件、最新文件、查找文件)(监控目录、监控mysql文件)

目录下最近60分钟内修改的最新文件。如果你需要查找的时间范围不同,可以调整。表示最近10分钟)。

Dontla的博客 2168

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

linux cp复制多个文件操作

在linux中,经常使用cp复制文件或文件夹。 基本操作 最简单的把文件a复制到文件夹file_a中,使用: cp a file_a,即可。 复制多个文件 想把多个文件如a,b,c复制到文件夹file_a中,使用: cp a b c file_a,即可。 复制一个文件夹下的多个文件 如果我们想把文件夹file_a中的多个文件,如a,b,c复制到文件夹file_b中,该怎么办呢? ...

re_call的博客 5万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Linux 中复制文件到多个目录中

概述在学习 Linux 的过程中,对于新手而言总是会使用几个命令来完成一个简单的任务。对正在熟悉使用终端的人这是很容易理解的行为。然而,如果你想要成为一个老手,学习一些“快捷命令”会显著减少时间浪费。在本篇中,我们会用一个简单的方法在 Linux 中用一个命令来将目录复制到多个文件夹中。通常写法在 Linux 中,cp 命令常被用于从一个文件夹中复制文件到另一个文件夹中,最简单的语法如下:# cp

小工匠 3万+

Linux中如何一条命令创建多个文件夹

创建文件夹:make directory 缩写就是:mkdir 见名知意:在Linux中创建文件夹使用的是mkdir 在当前目录下创建一个文件夹 mkdir dirName 在当前目录下创建多个文件夹 mkdir dirName1 dirName2 dirName3 创建一个文件夹,并给它创建多个子文件夹(注:虽然很直意但是太繁琐,下面还有更好的方式) mkdir dirName dirName/dirname1 dirName/dirname2 dirName/dirname3 更.

学java赚钱养你 1万+

如何在Linux系统中复制多个文件?

file?

weixin_70682362的博客 3380

linux复制文件多份,Linux下同时复制多个文件

方法一使用cp命令cp /home/usr/dir/{file1,file2,file3,file4} /home/usr/destination/需要注意的是这几个文件之间不要有空格具有共同前缀cp /home/usr/dir/file{1..4} ./复制的文件是file1, file2, file3, file4方法二使用python脚本 shutil库import os,sys,shuti...

weixin_29887959的博客 7786

linux 一个文件复制到多个目录,Linux学堂之复制文件到多个目录的方法

大部分Linux初学者都懂得如何将一个文件复制到另一个目录中,但是将一个文件复制到多个目录中,笔者相信大多数初学者可能都不太明白如何操作了。为此在本文中课课家笔者就为大家简单介绍下具体的操作方法和步骤,提高大家在使用Linux进行工作或者学习时的效率!我们知道在Linux中cp命令常被用于从一个文件夹中复制文件到另一个文件夹中,它的语法格式如下所示:# cp [options….] source(...

weixin_36429611的博客 3058

【Linux】找出文件之间的差异

使用命令comm可以找出2个文件之间的差异现在有文件如下:Linux:/qinys # cat A.txt apple lemon onion orange pear Linux:/qinys # cat B.txt grape lemon olive pear tomato找出两个文件之间的差异命令解释(1)sort [文件名1] –o [文件名2] :将文件名1中的内容排序后保存在文件名2...

weixin_30470857的博客 118

[Linux]将一个文件复制到多个文件夹下

本文介绍了在linux下如何使用shell命令将``一个文件复制到多个文件夹``、``多个文件复制到一个文件夹``和``多个文件复制到多个文件夹``下。

刘好念的博客 4486
上一篇: 我使用过的Linux命令之declare - 声明shell变量(不知道没关系、知道了就更好的内建命令)...
下一篇: 我使用过的Linux命令之date - 显示、修改系统日期时间
codingstandards
博客等级 码龄16年 12粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值