linux批量操作文件命令总结

news2024/11/28 22:49:34

总结下常用的linux命令,linux下的命令组合着实强大。有时候即便是使用的windows系统也可以在Dos窗口下使用linux下的一些命令工具,完成一些文本日常处理。

查找所有文件

find ./ -name "*.log"

查找某一后缀的文件并删除

find ./ -name "*.log" |xargs rm -rf

文件批量重命名方法

#查找当前路径下的所有文件,定向输出到old文件
$find ./ -name '*.log'  > old 2> /dev/null

$cat old
#遍历替换.log后缀名为.txt后缀名
$for i in `cat old`;do echo mv $i ${i/.log/.txt}; done > mv  2> /dev/null
#查看文件
$cat mov

#不想保存mv语句,直接执行mv命令,那就执行以下命令
$for i in `cat old`;do  mv $i ${i/.log/.txt}; done 2> /dev/null | bash -x

批量重命名原理解释

1.首先用find命令找到满足条件的文件,把结果重定向到文件old(find寻找的对象里面包含正则匹配符号时记得外面要用单引号,否则会报错)。 

2.变量循环读取文件old,使用替换方法,生成mv命令到新文件mv,先不执行生成的mv命令(注意命令中do和done后面没有分号)。

linux 下用find命令查找文件,rm命令删除文件。

删除指定目录下指定文件
find 要查找的目录名 -name .svn |xargs rm -rf

删除指定名称的文件或文件夹: find -type d | grep .svn$ | xargs rm -r

分析:
find -type d | grep .svn$ 通过此命令查找文件夹 过滤正则表达式中的目录
| xargs rm -r 执行删除指令

删除目录下所有exe文件

find . -name '*.exe' -type f -print -exec rm -rf {} ;

(1) "." 表示从当前目录开始递归查找

(2) “ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件

(3) " -type f "查找的类型为文件

(4) "-print" 输出查找的文件目录名

(5) 最主要的是是-exec了,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号。

grep常用指令

搜索文件中的内容,递归文件夹查找字符串。

$grep "xxx"  -R -n ./

-R:递归查找

-n:显示行号 

指定查找目录:

grep "xxx" -R -n /system/core

grep A | grep B                //显示既匹配A又匹配B的行

例如:grep "getValue"  -R -n ./ | grep KEY_SCENE_MOD

"或"操作查找两个字符串:

grep -E 'A|B' filepath        //显示匹配A或匹配B的行

例如:

grep -E 'getBlock|forwardPdfiumError'  -R -n ./jni/android/graphics/

find命令删除指定文件

--时间单位为天
find 查询路径  -ctime/-mtime/-atime 时间范围 -name 文件名称 -type f -exec rm {} \;
--时间单位为分钟
find 查询路径  -cmin/-mmin/-amin 时间范围 -name 文件名称 -type f -exec rm {} \;

#--删除/home/testfile目录下修改时间大于2天,后缀为.dat的文件
find /home/testfile  -mtime +2 -name "*.dat" -type f -exec rm {} \;

Linux为我们提供了一个简便的查询方式,那就是 +n 和 -n。下面以 -mtime 举例说明:
  -mtime n : n为数字,意思为在n天之前的“一天之内”被更改过内容的文件
  -mtime +n : 列出在n天之前(不含n天本身)被更改过内容的文件名
  -mtime -n : 列出在n天之内(含n天本身)被更改过内容的文件名
找 “5天之内被更改过的文件” 就是 find / -mtime -5 ,找“5天前的那一天被更改过的文件” 就是 find / -mtime 5 ,找“5天之前被更改过的文件” 就是 find / -mtime +5。+5 代表大于等于 6 天前的文件, -5 代表小于等于 5 天内的文件,5 则是代表 5-6 那一天的文件。

自动删除7天前的文件
下面的脚本是删除/home目录下7天前的文件:

#!/bin/bash
find /home/ -type f -mtime +7 -exec rm -f {} \;

把这个脚本保存在/tmp目录下,命名为:clearfile.sh

加入计划任务

crontab -e

10 22 * * * /bin/sh /tmp/clearfile.sh

这个表示为,每天22点10分执行这个脚本。

Linux crontab 命令

Linux crontab 是用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond 命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。

crontab [ -u user ] { -l | -r | -e }

 命令思维导图

引用

linux 命令 find与rm实现查找并删除目录或文件 - 会飞的斧头 - 博客园

【转】find命令批量修改文件后缀_cuihe6058的博客-CSDN博客

find命令批量修改文件后缀_ITPUB博客

Linux下批量修改后缀名_weixin_33795833的博客-CSDN博客

Linux常用命令大全(非常全面)_江畔独步的博客-CSDN博客_linux常用命令

linux系统 常用命令(全面总结)_籽麟网络的博客-CSDN博客_linux命令总结

Linux常用命令,目录解析,思维导图_51CTO博客_linux常用命令删除目录

LINUX基本指令_本小爷世界第一花式帅的博客-CSDN博客

find命令查询指定时间的大文件并删除_DBA_JohnHuang的博客-CSDN博客 

【shell】find查找某段时间内的文件|定期删除7天前的文件|shell显示特定时间段文件_bandaoyu的博客-CSDN博客_find查看七天的文件

三分钟上手linux基本指令_就爱酸辣土豆丝的博客-CSDN博客 

Linux crontab 命令 | 菜鸟教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88065.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

shell篇---运行python,单个或多个

shell运行python1、方法1在shell中利用export指定python解释器路径2、方法2利用conda激活虚拟环境,进入文件执行目录执行3、多个python(具体例子)4、具体例子code启动查看1、方法1 在shell中利用export指定python解释器路径 编写如下run.sh…

H5页面转微信小程序(web-view)

效果 先放效果让大家看一下吧,过程很简单。 H5页面图 小程序预览图 准备工作 注册一个小程序(一定得是企业认证账号,个人账号无法使用web-view),具体注册就不演示了。 国内的备案域名(你H5页面和后台…

SpringMVC学习:二、SSM整合

3. SSM 整合 3.1 需求 使用SpringMVC和MyBatis完成用户管理系统. 3.2 整合思路 springspringmvcmybaits的系统架构: 步骤: 第一步:整合dao层 ​ mybatis和spring整合,通过spring管理mapper接口。 ​ 使用mapper的扫描器自动扫描mapper接口在…

C++ Win32程序编写入门

翻译:原文地址 一、关于Win32 ​ 本文档描述了Win329.1版的功能。若要下载Win32的程序清单,可以点击这里。 Win32是一个用于构建windows应用程序的C库。Win32是MFC的免费替代品。它还有一个额外的优势,即能够在各种免费编译器上运行…

第五章. 可视化数据分析图表—常用图表的绘制5—多个子图表

第五章. 可视化数据分析图 5.3 常用图表的绘制5—多个子图表 Matplotlib可以实现在一张图上绘制多个子图表,Matplotlib提供了三种方法:一是使用subplot函数,二是使用subplots,三是使用add_subplot函数 subplot方法和add_subplot,定制效果比较…

难受啊,139天备战字节跳动,一个疏忽让我前功尽弃...

面试是走的内推途径,因为内推的简历通过率远高于其他方式;我的内推的途径有:联系我在字节跳动工作的一个大学学长。 在线面试,有个线上文本编辑器,类似leetcode那种,可以在线编程。然而有点紧张,视频面试网…

Excel·VBA文件重命名

目录获取文件夹下所有文件名获取文件夹下所有文件名并重命名简体/繁体文件名重命名获取文件夹下所有文件名 Sub 测试代码()Dim i&, j&file_path "E:\测试\重命名"With CreateObject("Scripting.FileSystemObject")For Each f In .GetFolder(file…

字节面试官:Rocketmq如何测试?看看我的回答能拿几分?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、…

磨金石教育兴趣技能分享||分享摄影中的“留白”艺术

老子讲:“虚实相生,有无相形”,有与无相对相衬。一幅画的留白可以看出画家胸中的沟壑,也可以看出作品境界的高下。 从某种层面上来讲,摄影也是作画的艺术,一张艺术感高的照片,也需要懂得留白。…

非零基础自学Golang 第2章 安装和运行Go 2.3 在Linux 下安装Go 2.4 在Mac OS 下安装Go

非零基础自学Golang 文章目录非零基础自学Golang第2章 安装和运行Go2.3 在Linux 下安装Go2.4 在Mac OS 下安装Go第2章 安装和运行Go 2.3 在Linux 下安装Go 由于Linux有众多发行版本,笔者这里以 CentOS 7作为示例进行安装介绍,其他发行版本请参考相关发…

C++ Reference: Standard C++ Library reference: Containers: map: cbegin

C官网参考链接&#xff1a;https://cplusplus.com/reference/map/map/cbegin/ 公有成员函数 <map> std::map::cbegin const_iterator cbegin() const noexcept;返回指向开始的const_iterator 返回指向容器第一个元素的const_iterator。 const_iterator是指向const内容的…

带你领略python魔法~免费复制文档数据

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~ 我们百度搜索一些东西得时候&#xff0c;经常找到文档里面 然后就会发现需要充值才能复制&#xff01;怎么可以不花钱也保存呢&#xff1f; 今天就分享给大家一个python获取文档数据得方法 环境使用: python 3.8 pycharm…

DolphinScheduler 发布 3.0.3 版本,重点修复 6 个 Bug

点亮 ⭐️ Star 照亮开源之路https://github.com/apache/dolphinscheduler近日&#xff0c;Apache DolphinScheduler 发布了 3.0.3 版本。此版本主要基于 3.0.2 版本进行了 Bug 修复&#xff0c;共计修复 6 个 Bug&#xff0c;以及 3 处文档修改。其中的较为重要的 Bug fix 为…

外汇天眼:WTI原油自低位累计反弹9%!欧佩克呼吁“警惕和谨慎”

美国CPI增速创近一年来新低&#xff0c;美元指数失守104.0 周三&#xff08;12月13日&#xff09;公布的美国11月CPI同比增长7.1%&#xff0c;不及预期增长7.3%&#xff0c;前值7.7%&#xff1b;美国11月CPI环比增长0.1%&#xff0c;不及预期增长0.3%&#xff0c;前值0.4%。 从…

专访AliceBob的CEO兼联合创始人:深入探知猫态量子比特

&#xff08;图片来源&#xff1a;网络&#xff09; Alice&Bob公司是一家使用cat量子比特制造容错量子计算机的公司。近日&#xff0c;Alice&Bob的CEO兼联合创始人Thau Peronnin&#xff08;以下简称T&#xff09;接受了记者Yuval Boger&#xff08;以下简称Y&#xff…

Java#37(反射)

目录 一.反射的作用和关键 二. 反射获取对象 1.反射获取类对象 2.反射获取构造器对象 3.反射获取成员变量对象 4. 反射获取方法对象 5.用反射绕过编译阶段为集合添加数据 反射做通用框架 一.反射的作用和关键 作用: 反射是在运行时获取类的字节码文件对象: 然后可以解…

未能加载文件或程序集XXX.dll,程序启动失败的解决方案

之前在VS2019上下载一个项目&#xff0c;运行后就报错&#xff0c;弹出 出错&#xff1a;未能加载文件或程序集XXX.dll 我们选中该dll&#xff0c;右键&#xff0c;属性&#xff0c;发现 该dll被锁定 点击“解决锁定”即可解决。 为了一劳永逸解决此问题&#xff0c;后到微软…

【头歌C语言程序与设计】结构体共用体枚举类型

目录 写在前面 正文 第1关&#xff1a;结构体 第2关&#xff1a;共用体 第3关&#xff1a;枚举类型 写在最后 写在前面 本文代码是我自己所作&#xff0c;本人水平有限&#xff0c;可能部分代码看着不够简练&#xff0c;运行效率不高,但都能运行成功。另外&#xff0c;如…

C++ 智能指针

目录 为什么需要智能指针&#xff1f; RAII 智能指针的原理 C智能指针的历史 智能指针 auto_ptr unique_ptr shared_ptr shared_ptr 引用计数解决智能指针拷贝问题 shared_ptr 循环引用问题 智能指针删除器 weak_ptr 为什么需要智能指针&#xff1f; 1. 我们在很多…

基于 SSM 的 CRM 客户管理系统

1&#xff1a;通过点击【登录】按钮&#xff0c;获取登录的接口地址 2&#xff1a;在UserLoginController类中&#xff0c;增加登录接口 3&#xff1a;首先判断用户名是否存在&#xff0c;其次判断匹配是否匹配 4&#xff1a;处理session问题 代码如下&#xff1a; UserLo…