求助写一个 简单的 Linux Shell 脚本

gclove
  • 1.4k

比如一个目录下有下面几个文件

苹果1_1.jpg   
苹果1_2.jpg 
苹果1_3.jpg  
三星2_1.jpg  
三星1_1.jpg 
三星1_2.jpg 
青苹果1_1.jpg
...

如何将 按照 土豆.txt 三星.txt 保存遍历后的文件名
(里面保存相关的文件名)

# 我只知道遍历文件的文件名是 
for file in ./*
do
    if test -f $file
    then
        echo $file 是文件
    fi
    # if test -d $file
    # then
    #     echo $file 是目录
    # fi
done
回复
阅读 3.5k
2 个回答

做好数据备份!

perl-rename 's/(.*)\d_.*$/\1\.txt/' *.jpg

是批量改名么?

按照你的思路,shell这样写:

sh#!/bin/sh

for f in ./*.jpg
do
  mv "$f" "${f%.jpg}.txt"
done
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏