当前位置:  技术问答>linux和unix

求unix中批量修改文件名脚本

    来源: 互联网  发布时间:2016-03-08

    本文导语:  文件名如下: LZGG0320000207.pik.tar LZGG0320000214.pik.tar.20080214   LZGG0320000222.pik.tar            LZGG0320000229.pik.tar.20080229 LZGG0320000207.pik.tar.20080207   LZGG0320000215.pik.tar            LZGG0320000222.pik.tar.20080222 LZGG0320000208.pik....

文件名如下:
LZGG0320000207.pik.tar
LZGG0320000214.pik.tar.20080214  
LZGG0320000222.pik.tar           
LZGG0320000229.pik.tar.20080229
LZGG0320000207.pik.tar.20080207  
LZGG0320000215.pik.tar           
LZGG0320000222.pik.tar.20080222
LZGG0320000208.pik.tar           
LZGG0320000215.pik.tar.20080215  
LZGG0320000223.pik.tar
修改规则:
1.将文件名中2000修改为2008;
2.只修改 .tar文件,后面带日期的文件不改.

|
ls *.tar|while read name
do
a=`echo $name|cut -c 1-6`
b=`echo $name|cut -c 11-40`
mv $name $a2008$b
done

|
你的是unix还是linux?如果是linux那rename没错
如果是unix要么写脚本,要么装一个util-linux的软件包,rename就是这个包里的

就算你懒得下软件包,也极其简单啊
find -name "*2000*.pik.tar" -exec sh -c "mv '{}' $(echo '{}' | sed 's/2000/2008/')" ';'
如果你怕有错,就先备份一下原来的文件 


声明一下,没用过比较纯的unix,一直都是在linux下工作,不知道unix里有没有find,sed这样的工具,因为find,sed都是GNU的。

|
楼上的写法学习了一下,以下是AIX5L中POSIX sh的案例(比较通用):

#!/bin/sh
for fname in `ls *.tar` 
do 
   dename=`echo $fname|sed 's/2000/2008/'` 
   mv $fname $dename 
done 

    
 
 

您可能感兴趣的文章:

  • 取一段路径后的文件名(UNIX下)
  • 在windows可以访问到中文文件名的文件,而在unix下却访问不了,是什么原因?
  • unix系统文件名中允许/禁止哪些字符?
  • Unix的文件名字符长度能否超过14个?为什么?
  • HP Unix下mount后文件名的问题
  • 求教:在UNIX中查找包含指定文字的文件名
  • linux Unix 中想取某个区间的文件名列表
  • 如何用shell实现sco unix系统多级目录下文件名的批量修改?
  • 如何方便地在联网的二台机子(sco unix)上传送一批已知文件名的文件?
  • windows上脚本调用UNIX的脚本
  • unix下的shell脚本中如何进行telnet到另一unix主机
  • UNIX下,如何写脚本来杀进程?如何在指定的时间自动运行脚本?
  • 关于unix使用参数导致脚本输出异常(与脚本内直接带参数输出结果不同)
  • unix 脚本执行问题
  • unix下写个脚本,如何显示时间?谢谢!
  • unix 下web应用程序调用 一个写数据库的perl脚本 的问题。
  • unix 脚本登录telnet
  • 紧急求教关于UNIX提文件的脚本
  • 如何在unix中编写脚本文件呢?
  • unix 环境下,我想写一个脚本用来建立informix 数据库的索引,请达人指教
  • unix脚本中的awk问题
  • unix定期删除日期格式文件夹的脚本问题
  • 请问这个文件中的两句unix脚本语句是什么意思?
  • 里面有8个UNIX命令,有没有人用SHELL脚本帮我写到一文件中去
  • 急:unix的shell脚本中,定义了一个函数getDate(),在后面的执行命令参数用要使用这个函数的返回值,应该怎么写?
  • 关于UNIX的历史 : 1973年,K.Thompson和D.M.ritchie,用C改写UNIX。那么,在此之前,UNIX是用什么写的? iis7站长之家
  • 帮帮忙,100分奉上,一定给分,unix下写个简单的脚本
  • 大虾们,请教一个简单的UNIX shell脚本问题
  • UNIX脚本中校验日期是否有效
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • unix 下 C++实现 ftp 到另一台主机上 修改文件内容 !能不能直接在主机上修改 还是只能get下来本地修改完后 在put上去
  • 各位大虾:请问UNIX环境下C语言函数memcpy拷贝的字符的长度有没有限制,若有,能不能修改,怎么修改?
  • 菜鸟提问:如何修改UNIX的shell提示符?
  • 怎么修改 unix 安装包信息啊
  • 救命!如何修改unix系统的分辨率?好像是改个文件,具体我忘了。
  • 小问题——怎样修改UNIX的系统时间
  • 为什么修改不了Unix时间
  • 请问unix下修改文件和文件夹读写权限的问题
  • NCR-unix下如何修改网卡上绑定的ip地址?
  • SCO UNIX怎么看系统的配置信息,还有什么修改核心参数?
  • UNIX系统中,如何修改服务器名
  • 如何使我的程序可以修改unix提示符
  • *****《unix环境高级编程》里的代码是否不用修改就可以在linux上运行?
  • UNIX下 wc,grep,和修改文本文件的c程序的源程序那位高人能否提供一份? zero_baby@163.net
  • Unix 进程死了但是没有core file文件如何处理。我已经修改了ulimit = unlimited
  • 用java程序修改unix下用户的口令
  • [急!!!11点结贴!!]是否有办法修改UNIX的外部命令
  • unix下如何修改时区?
  • 【高分求解】 请帮帮忙,修改这个UNIX shell程序 【UP有分】 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
  • java命名空间java.util.regex类pattern的类成员方法: unix_lines定义及介绍
  • 刚刚接触Unix系统和Unix编程。急需Unix下多线程程序设计和网络Socket程序设计方面的资料。
  • unix/Linux下c++ boost thread库读写锁介绍
  • 关于UNIX的历史 : 1973年,K.Thompson和D.M.ritchie,用C改写UNIX。那么,在此之前,UNIX是用什么写的?
  • php将标准字符串格式时间转换成unix时间戳_strtotime
  • 没有unix系统我如何学习unix
  • php将unix时间戳转换成字符串时间函数(date)
  • unix盘哪里有下载的??哪里有比较好的unix论坛??万分感谢!!!!!!!!!
  • unix/Linux下c/c++ pthread库读写锁函数介绍
  • 急!装完unix5.06,再装win2000。重启后不能进unix.
  • UNIX特急!!!digital unix问题,请专家快来!!!
  • UNIX支持中文否,请推荐UNIX好书


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3