shell 批量修改文件名

简介: shell 批量修改文件名

shell 批量修改文件名

tags: 任务

文章目录

1. 添加

$ ls
file1  file2  file3  file4
$ cat mv1.sh
#!/bin/bash
for file in `ls file*`
do
   mv $file `echo "${file}.txt" `
done
$ bash mv1.sh 
$ ls
file1.txt  file2.txt  file3.txt  file4.txt
$ ls
file.1  file.2  file.3  file.4
$ cat mv1.sh
#!/bin/bash
for file in `ls file*`
do 
   #mv $file  `echo ${file}.txt|sed 's/\.//1' `
   mv $file $(echo ${file}.txt|sed 's/\.//1')
done
$ bash mv1.sh 
$ ls
file1.txt  file2.txt  file3.txt  file4.txt

2. 修改

$ ls
file1.txt  file2.txt  file3.txt  file4.txt 
$ cat mv3.sh
#!/bin/bash
for file in `ls file*`
do
   mv $file ${file%.txt}.sh    #第一种方法
done
$ bash mv3.sh 
$ ls
file1.sh  file2.sh  file3.sh  file4.sh
$ cat mv4.sh
#!/bin/bash
for file in `ls file*`
do
   mv $file `echo $file |sed 's/\.sh/\.pdf/'`   #第二种方法
done
$ bash mv4.sh
$  ls
file1.pdf  file3.pdf  file2.pdf  file4.pdf 

3. 删除

$  ls
file1.pdf  file3.pdf  file2.pdf  file4.pdf 
$ cat mv5.sh
#!/bin/bash
for file in `ls file*`
do
   mv $file `echo $file |sed 's/\.pdf//'`
done
bash mv5.sh
$ ls
file1  file2  file3  file4
相关文章
|
7月前
|
存储 Shell 编译器
【Shell 编程设计】设计一个批量修改目录中的文件名的shell脚本
【Shell 编程设计】设计一个批量修改目录中的文件名的shell脚本
59 0
|
运维 Shell
运维(05)- shell文件名代换(Globbing)
运维(05)- shell文件名代换(Globbing)
51 0
|
Shell
Shell mv 修改文件名、扩展名、文件夹名
Shell mv 修改文件名、扩展名、文件夹名
105 0
|
Shell
shell脚本获取当前脚本的文件名
shell脚本获取当前脚本的文件名
205 0
|
Shell
shell 获取到文件夹下的文件名
shell 获取到文件夹下的文件名
66 0
Shell脚本常用练习(1)--输出当前目录下的文件名
Shell脚本常用练习(1)--输出当前目录下的文件名
Shell脚本常用练习(1)--输出当前目录下的文件名
|
Shell
SHELL脚本递归循环,文件名包含空格的处理办法
SHELL脚本递归循环,文件名包含空格的处理办法
184 0
|
Shell
用shell把所有文件名修改为小写
用shell把所有文件名修改为小写
131 0
|
Shell Linux
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
191 0
|
Shell
SHELL中从变量中截取后缀、文件名、目录名
SHELL中从变量中截取后缀、文件名、目录名
174 0