`

用shell脚本 改变某目录下一类文件的后缀

阅读更多



     编写这个功能主要是由于我的汉王电子书不能查看.asm, .java等格式的文件,因此我需要把他们的

后缀改成.txt,不过需要看的东西太多了,索性写一个程序解决!

     之前用java写了个改后缀和编码的程序,打成jar包,但由于兼容性问题,运行不了。故此,在

Linux下,直接写一个shell脚本来做:

#######################################################################
#changeSuffix.sh——改文件后缀名

echo "请输入一个绝对路径,本脚本将把其下和其子目录下的所有后缀为.asm的文件改名为.txt"
echo "(e.g. /home/hadoop/Desktop/chapter3)"
read myPath
find $myPath -name *.asm -print>/home/hadoop/Desktop/temptemptemp.txt


while read line
do
  echo "mv" $line
  dest=${line/".asm"/".txt"}
  mv $line $dest
done < /home/hadoop/Desktop/temptemptemp.txt

rm -rf /home/hadoop/Desktop/temptemptemp.txt
#######################################################################

 


核心参考资料:
1、shell中字符串的处理
表达式     含义
${#string}     $string的长度
   
${string:position}     在$string中, 从位置$position开始提取子串
${string:position:length}     在$string中, 从位置$position开始提取长度为$length的子串
   
${string#substring}     从变量$string的开头, 删除最短匹配$substring的子串
${string##substring}     从变量$string的开头, 删除最长匹配$substring的子串
${string%substring}     从变量$string的结尾, 删除最短匹配$substring的子串
${string%%substring}     从变量$string的结尾, 删除最长匹配$substring的子串
   
${string/substring/replacement}     使用$replacement, 来代替第一个匹配的$substring
${string//substring/replacement}     使用$replacement, 代替所有匹配的$substring
${string/#substring/replacement}     如果$string的前缀匹配$substring, 那么就用$replacement来代替匹配到的$substring
${string/%substring/replacement}     如果$string的后缀匹配$substring, 那么就用$replacement来代替匹配到的$substring
2、需要java版代码的可以找我要^_^仅限友人哈

分享到:
评论

相关推荐

    Shell 脚本编程实战100例.pdf

    从提供的文件内容来看,这是一本关于Shell脚本编程的实战教程书籍,以实例的方式教授读者如何使用Shell脚本来完成各种Linux系统运维任务。下面将详细介绍从给出的内容中能够总结出的一些Shell脚本编程知识点。 首先...

    Linux shell脚本编写基础

    在进行linux测试时编写脚本是必不可少的,Shell脚本的名称可以随便定义,也不要什么后缀名, 例如可以写abc,smartzip这类名称,运行时只要键入 ./smartzip就能运行脚本了。。 每行命令开头处不用就空格也行。。 第1...

    基于Babel的Shell脚本数据库管理设计源码

    该项目名为“基于Babel的Shell脚本数据库管理设计源码”,是一个专门针对数据库管理的工具,它基于Babel技术实现,并使用Shell脚本来完成数据库的管理任务。Babel是一种编程语言转换工具,能够在不同的编程语言之间...

    Shell编程.pdf

    Shell 脚本语言的好处是简单、易学、易用,适合处理文件和目录之类的对象,以简单的方式快速完成某些复杂的事情。 1. Shell 是什么 Shell 是一块包裹着系统核心的壳,处于操作系统的最外层。 Shell 是一个用 C ...

    Linux下各种后缀名介绍

    要运行一个Shell脚本,可以使用以下命令: - 执行Shell脚本:`bash scriptname.sh` ### 5. 配置与编译 当处理源代码时,通常会涉及编译过程。以下是一般的编译和安装步骤: 1. **配置**:`./configure`,这一步...

    iOS通过shell脚本批量修改属性

    总结来说,通过shell脚本批量修改属性是一种有效的混淆手段,它可以改变二进制文件中的符号表,降低因内容重复而被App Store拒绝的风险。然而,开发者应当意识到,苹果的审核策略可能不断进化,因此需要持续关注并...

    实用shell脚本示例,它会定时检查服务器的存储、内存和CPU占用情况 如果发现存储使用率超过50%,它会删除一些日志文件来释放

    首先,脚本的名称被定为monitor.sh,这是一个在Linux和类Unix操作系统中常见的shell脚本文件名后缀。通过将该脚本保存为monitor.sh,用户可以轻松地通过命令行接口调用和执行它。脚本需要被赋予执行权限,这一步骤...

    三阶段shell课件.pdf

    根据提供的文件内容,我们可以提取以下关于Shell脚本的重要知识点: 1. Shell概述: - Shell是一种命令解释器,用于接收用户的指令并驱动操作系统和硬件。 - Linux系统中存在多种Shell,包括但不限于Bourne Shell...

    IT项目运维资料-shell编写规范1218.pdf

    例如,可执行脚本使用.sh后缀,配置文件使用.conf或.ini,日志文件使用.log,数据文件使用.dat或.data,进程PID文件使用.pid,临时文件使用.开头加.tmp,公共组件则以.comm结尾。文件名应简洁明了,不超过15个字符。...

    shell 批量压缩指定目录及子目录内图片的方法

    在Linux或类Unix系统中,shell脚本是一种自动化任务执行的工具,通过编写简单的命令组合,可以实现批量处理任务。在这个案例中,我们使用的shell命令包括`find`、`if`条件语句、`for`循环以及`convert`(来自于...

    基于Java与Shell支持的Jediterm SSH客户端设计源码

    整体上,该项目是一个多文件、跨平台的SSH客户端源码项目,它以Java语言为核心,整合了Shell脚本和批处理文件,旨在为用户提供一个能够在不同操作系统上稳定运行的SSH终端仿真器。项目的文档化工作做得很充分,从...

    Shell基础十二篇

    例如,`find /home/user -name "*.txt"` 可以查找 `/home/user` 目录下所有 `.txt` 后缀的文件。 - 使用选项 `-type` 可以指定文件类型(`f` 表示文件,`d` 表示目录等),例如 `find /home/user -type f -name "*....

    Python实现批量更换指定目录下文件扩展名的方法

    Python 作为一种简洁高效的脚本语言,在处理文件和目录方面具有强大的功能,下面我们就来详细探讨如何用 Python 来批量更换指定目录下文件的扩展名。 #### 实现原理 Python 提供了多种方法来遍历目录和修改文件名...

    LINUX与UNIX+SHELL编程指南全

    2. **文件系统**:它们采用层次结构的文件系统,根目录`/`下包含各种系统目录,如`bin`(二进制命令)、`etc`(配置文件)和`usr`(用户程序)。 3. **命令行界面**:提供终端模拟器,通过命令行接口执行操作,如`ls...

    基于Linux平台的多种编程语言设计源码仓库

    该源码仓库内部结构清晰,包含了总计173个文件,且这些文件采用了多种不同的编程语言编写,涵盖了包括但不限于C++、C、JSON、文本、Shell脚本等。其中C++语言编写的文件数量最多,分别由28个头文件(文件后缀为.hpp...

    基于Shell与Python的我的技术文档设计源码分享

    Shell脚本主要应用于Linux环境下,进行系统级的操作,如文件管理、网络配置等,而Python则以其强大的跨平台能力和丰富的库支持,在数据处理、文件操作、自动化任务等方面发挥着巨大作用。两个脚本语言的结合,可以...

    chrome-headless-shell-win64-133.0.6943.53.zip

    最后,该文件的名称后缀“.zip”表示这是一个压缩文件格式,通常用于将多个文件打包成一个文件以便于存储和传输。在解压之后,用户通常会得到一个可执行文件,即“chrome-headless-shell-win64”,直接运行这个文件...

    基于Java、Vue、JavaScript、HTML及Shell的多语言摄影项目设计源码

    项目的名字可能暗示其为一个多语言支持的摄影类项目,这意味着它可能具备让用户在不同语言环境下使用的能力,从而吸引更广泛的用户群。项目中可能包含了语言切换功能,以及针对不同语言的本地化资源文件。 文件名称...

    SHELL编程

    从给定的文件信息来看,主题是关于SHELL编程,这是一种在Unix和类Unix系统(如Linux)中广泛使用的脚本语言。SHELL编程允许用户自动化任务、处理文本和文件、执行系统管理任务等,是系统管理员和开发人员的重要工具...

    很好的Shell总结教程

    编写Shell脚本的第一步是创建一个新的文本文件,并在文件开头声明所使用的Shell类型,通常以`#!/bin/bash`开头表示使用Bash Shell。接下来可以在文件中添加各种命令和逻辑,保存后通过运行`chmod +x scriptname.sh`...

Global site tag (gtag.js) - Google Analytics