`
javasogo
  • 浏览: 1816905 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

用AWK实现批量命名修改

 
阅读更多

从VeryCD下了一堆电子书,但是其中有些书的命名有点问题,比如单引号被写成“'”。

./[UNIX系统管理高手].O'Reilly.-.Advanced.Perl.Programming.pdf
./[UNIX系统管理高手].O'Reilly.-.Beginning.Perl.For.Bioinformatics.pdf
./[UNIX系统管理高手].O'Reilly.-.Cgi.Programming.With.Perl.pdf
./[UNIX系统管理高手].O'Reilly.-.Classic.Shell.Scripting.Feb.2005-DDU.pdf
./[UNIX系统管理高手].O'Reilly.-.Database.Programming,.John.Wiley.&.Sons.chm
./[UNIX系统管理高手].O'Reilly.-.Embedding.Perl.in.HTML.with.Mason.chm
./[UNIX系统管理高手].O'Reilly.-.Learning.Perl.2nd.pdf
./[UNIX系统管理高手].O'Reilly.-.Learning.Perl.3rd.Edition.pdf
./[UNIX系统管理高手].O'Reilly.-.Learning.Perl.Objects,.References.and.Modules.chm
./[UNIX系统管理高手].O'Reilly.-.learning.perl.the.hard.way.pdf
./[UNIX系统管理高手].O'Reilly.-.Learning.Perl.Tk.1999.pdf
./[UNIX系统管理高手].O'Reilly.-.Learning.the.Unix.OS.chm
./[UNIX系统管理高手].O'Reilly.-.Managing.NFS.and.NIS.2nd.Ed.pdf
./[UNIX系统管理高手].O'Reilly.-.Managing.Projects.with.GNU.make.(2004),.3Ed.DDU.chm
./[UNIX系统管理高手].O'Reilly.-.Mastering.Algorithms.With.Perl.1999.pdf
./[UNIX系统管理高手].O'Reilly.-.Mastering.Perl.For.Bioinformatics.chm
./[UNIX系统管理高手].O'Reilly.-.Mastering.Perl.for.Bioinformatics.pdf

一个个改太麻烦了,所以写了几个命令拼凑一下。先用find把文件名选出来。然后再用AWK对目标文件名进行处理,最后调用mv命令改名。

find -name '*'*' > filelist
awk 'BEGIN { FS="/" } { org=$2; gsub("'", "'/''", $2); org="/"" org "/""; $2="/"" $2 "/""; system("mv " org " " $2); }' filelist

分享到:
评论

相关推荐

    批量修改无规则文件名

    ### 批量修改无规则文件名的方法与技巧 在日常工作中,我们经常需要对大量文件进行重新命名,尤其是在处理无规律文件名时更是如此。本文将详细介绍如何利用shell脚本(如SED、AWK、Perl)以及简单的DOS命令配合电子...

    mykubernetes#linux#批量修改文件名1

    for循环结合sed替换ls结合awk,输出交给bash执行rename命令改名for循环加变量部分截取不使用echo也可以实现根据文件批量修改文件名提供的文档

    Shell命令批量修改图片文件名

    本文主要使用了几个关键的Shell命令来实现文件批量重命名的功能:`for`循环、`awk`和`sed`。这些命令在Linux或类Unix系统中非常常见,功能强大且灵活多变。 ##### `for`循环 `for`循环是一种常用的控制结构,用于...

    Linux shell利用sed如何批量更改文件名详解

    ### Linux Shell 利用 Sed 如何批量更改文件名详解 #### 前言 在日常工作中,有时我们需要处理大量的文件命名问题,特别是在处理历史数据、迁移项目或是进行自动化任务时,批量修改文件名的需求十分常见。Linux ...

    批量提取图片的文件名信息

    这通常是一个用户友好的图形界面应用程序,允许用户选择一个目录,然后程序会遍历该目录及其子目录,收集所有图片文件的文件名和其他可能的元数据,如创建日期、修改日期、大小等,并将这些信息以用户可读的形式展示...

    linux一次建立大量用户的方法

    总结起来,本文介绍了一种通过Excel数据文件和Awk脚本来批量创建Linux用户的高效方法。这种方法不仅能够节省大量时间,还能减少手动输入时可能出现的人为错误。对于需要频繁进行用户管理的场景来说,这种自动化的...

    UNIX shell 编程指南

    如何批量改名 bc指令的基本用法 检查服务器的连接状况的shell find 和 exec xargs 保证shell脚本执行唯一性 用一条命令处理分别改变文件和文件夹的权限 unix时间戳与系统时间相互转换 awk的学习 保护自己编写的shell...

    linux运维学习笔记:企业Shell面试题总结-1.pdf

    在具体的脚本实现中,可以看到多种实现方式,包括直接循环遍历文件并使用`mv`命令重命名,利用管道将`ls`和`sed`结合实现批量重命名,以及使用`awk`进行文本处理和重命名。 3. 脚本实现MySQL数据库分库备份和分库...

    文件移动到相同的目录脚本

    本文将详细介绍一个用于在Linux环境下批量创建目录并将指定格式的文件按照一定规则移动到相应目录中的Shell脚本。该脚本主要针对文件名格式为“数字_数字.jpg”的图片文件进行处理,根据文件名中的第一个数字创建...

    Linux shell ftp命令根据文件日期下载文件的方法

    这里需要注意的是,`awk`中的模式变量需要用单引号括起来,`.*`表示任意字符,`$`表示以`.dat`结尾。`pattern`的内容可以根据实际需求进行调整。 ### 4. 对文件时间进行比较 有了前面的基础之后,就可以将文件的...

    Linux常用Shell脚本珍藏

    - 用户操作命令:`useradd`, `mkdir`, `chown`, `chgrp` 分别用于创建用户、创建目录、设置目录所有者以及修改目录所属组。 2. **逻辑结构**: - 初始化变量:`i=1`,用于计数。 - 用户名生成:根据用户数量动态...

    AIX shell工具集概述.docx

    1. **批量改名或拷贝文件**:在AIX中,可以利用`ls`、`awk`和`bash`的组合进行文件的批量重命名或复制。例如,将所有以`start.sh`开头的文件更改为`stop.sh`,首先使用`ls -l start*.sh`列出这些文件,然后通过`awk`...

    LINUX与UNIX SHELL编程指南(1-15)

    结合使用,它们可以执行如批量重命名、删除或修改文件等操作。 10. **引号的使用** (015-引号.PDF): 在Shell编程中,正确使用单引号(' ')、双引号(" ")和反引号(`)至关重要,因为它们决定了如何解析和处理字符串中...

    Bash工具指南.pdf

    首先是find工具,它是一款在UNIX系统中非常有用的命令,用于在目录树中查找符合条件的文件,这些条件包括文件名、类型、权限、修改时间、大小等。find命令的使用语法包含path和expression两个主要部分。path部分默认...

    Linux命令技巧之30个必会的命令技巧

    6. **批量解压tar.gz文件**:可以使用`find`命令结合`-exec`、`for`循环或`xargs`来批量解压多个tar.gz文件。 7. **筛选文件内容**:通过`grep`、`sed`或`awk`命令,可以过滤掉文件中的注释行和空行,方便处理文本...

    ubuntu skills ubuntu命令技巧(pdf格式)

    移除不再使用的软件包的残留配置文件,可以通过`sudo apt autoremove`命令实现。 ##### 1.9 编译时缺少头文件的自动处理 当编译过程中遇到缺少头文件的情况时,可以使用`apt-file update`更新索引,然后使用`apt-...

    Ubuntu命令技巧.pdf

    - 使用 `tcpdump -c 20000 | awk '{print $3}' | sort | uniq -c | awk '$1>100 {print $2 " " $1}'` 命令统计发送包数量大于100的IP地址。 **6.14 屏蔽IPv6** - 编辑 `/etc/sysctl.conf` 文件,添加 `...

    利用shell脚本修正代码风格 - Eating my own dog food

    在修正代码风格时,shell脚本可以用于批量处理文件,检查代码规范,甚至进行自动格式化。例如,它可能会用到诸如`sed`、`awk`或`perl`等命令行工具来查找和替换不符合规范的代码模式。 描述中的"尽信书不如无书,请...

Global site tag (gtag.js) - Google Analytics