linux批量文件处理,Linux一行命令处理批量文件

前言

最好的方法不一定是你最快能想到的。工作中针对临时使用的脚本不要求健壮,写出来越快越好。这里提供一种使用sed命令构造命令解决处理批量文件的技巧,供参考。

需求案例1

将当前目录下所有的0_80_91.txt、0_80_92.txt、0_80_93.txt、。。。等几十个文件的文件名修改为0_81_91.txt、0_81_92.txt、0_81_93.txt。也就是将文件名中的80修改为81。

实现命令为:ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp' | sh

#ls *.txt

0_80_91.txt 0_80_92.txt 0_80_93.txt

#ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp'

mv 0_80_91.txt 0_81_91.txt

mv 0_80_92.txt 0_81_92.txt

mv 0_80_93.txt 0_81_93.txt

#ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp' | sh

#ls *.txt

0_81_91.txt 0_81_92.txt 0_81_93.txt

需求案例2

将当前目录下的所有的0_80_91.Z、0_80_92.Z、0_80_93.Z文件通过命令cc_uncompress调用解压并输出到指定文件。调用格式为cc_uncompress -s 0_80_91.txt -d 1.txt。1.txt可以是任意文件名。

实现命令1为:ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp'

#ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp'

cc_uncompress -s 0_80_91.Z -d 0_80_91.Z.txt

cc_uncompress -s 0_80_92.Z -d 0_80_92.Z.txt

cc_uncompress -s 0_80_93.Z -d 0_80_93.Z.txt

#ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp' | sh

实现命令2为:find . -name "*.Z" -exec cc_uncompress -s {} -d {}.bak \;

如何将Linux rm命令删除的文件放入垃圾箱

因为rm命令删除的文件是不会放入垃圾箱的,所以无法恢复,下面小编就给大家介绍一种方法,通过替换Linux rm命令的方法,从而将rm命令删除的文件放入垃圾箱. 方法: 1. 在/home/userna ...

mac linux rename命令行批量修改文件名

我的mac使用命令行批量修改名字时发现居然没有rename的指令: zsh: command not found: rename 所以使用HomeBrew先安装一下: ➜ ~ brew install ...

Linux常用命令_(文件权限)

Linux权限管理: 二.权限管理1.3种基本权限在Linux中,将使用系统资源的人员分为4类:超级用户.文件或目录的属主.属主的同组人和其他人员.超级用户拥有对Linux系统一切操作权限,对 于其他 ...

Linux常用命令01(文件和目录)

目标 查看目录内容 ls 切换目录 cd 创建和删除文件 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 > 和 &g ...

Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

Linux常用命令_(文件查看)

文件查看主要有以下命令 cat.tac.more.less.head.tail.nl cat命令:是一个文本文件查看和连接工具.从第一个字节开始正向查看文件的内容,适用于小文件 以第一行开始,显示没有 ...

linux常用命令:创建文件和文件夹

1.首先说一下touch 创建文件的命令,touch可以用于创建二进制文件,用法非常简单.用法:touch+文件名,touch与文件名之间一定要有空格.图中先用之前分享过的命令来查看一下/目录下面有多 ...

PHP调用Linux的命令行执行文件压缩命令&&创建文件夹修改权限

一开始,我和普通青年一样,想到用PHP内置的 ZipArchive纠结的是环境上没安装zip扩展,想采用用PHP调用Linux的命令行 ,执行压缩命令,感兴趣的朋友可以了解下,希望本文对你有所帮助 前 ...

linux常用命令指南——查找文件我最强:find

2.3.2 查找文件我最强:find 2.3.2.1 find查找常用命令示例 find / -name 'wfy.txt' # 从根目录下开始查找文件wfy.txt find . -name '*f ...

随机推荐

Winform MDI窗体容器 权限 简单通讯

MDI窗体容器 权限  using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...

wpf 报错: 在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh”。

今天修改Bug的时候遇到一个问题: datagrid 设置了双击事件,双击弹出一个窗口,在多次点击后报错:在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh” 网上查了 ...

centos7 memcached+memagent 集群

1. 安装libevent wget https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libe ...

WCF服务在类库中的引用

在类库中引用了WCF服务,悲剧降临了,追踪日志看到下边一串: --------------------------------------------------------------------- ...

关于MyBatis的工作流程

1.从一个jdbc程序开始 public static void main(String[] args) { Connection connection = null; PreparedStateme ...

修改MySQL的数据目录

环境:CentOS Linux release 7.1.1503 (Core) 1. 安装MYSQL wget http://dev.mysql.com/get/mysql-community-rel ...

SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)

在上一篇文章,讲了服务的注册和发现.在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的.Spring cloud有两种服务调用方式,一种是ribbon+r ...

springboot 学习之路 22 (读取自定义文件)

springboot读取自定义的properties文件: package com.huhy.demo.properties; import lombok.Data; import org.sprin ...

centos6.5制作OpenStack云平台Windows7镜像

# yum install virt-manager libvirt qemu-img virt-viewer -y # vi /etc/libvirt/qemu.conf # service lib ...

postgresql 创建用户并创建数据库

首先通过 sudo -i -u postgres 以管理员身份 postgres 登陆,然后通过 createuser --interactive (-- interactive 是交互式,创建过程可 ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值