bash :将文件名的一部分更改为小写

斯特凡诺·拉达利

我需要重命名一个文件列表,将任何文件扩展名更改为小写:即:从My_TEST.ONE.two.Three.fOuR.FIveMy_TEST.one.two.three.four.five

目前我找到的方法是这个

#!/bin/bash

sourcefilename="My_TEST.ONE.two.Three.fOuR.FIve"
newfilename=""
for word in $(echo $sourcefilename | tr '.' '\n'); do
        if [ -z "$newfilename" ]; then
                newfilename="$word"
        else
                newfilename="$newfilename.$(echo $word | tr [:upper:] [:lower:])"
        fi
done

有更好的(也许是优雅的)方法吗?

αғsнιη

使用bash参数扩展功能。

fileName='My_TEST.ONE.two.Three.fOuR.FIve'
first="${fileName%%.*}"
rest="${fileName#*.}"
echo mv -v "${fileName}" "${first}.${rest,,[A-Z]}"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 bash/sed 将文件名的一部分添加到 .csv 文件

重命名文件,删除文件名bash脚本的一部分

如何使用bash脚本删除文件名的一部分

将文件名的一部分分配给bash变量?

Bash脚本可删除目录下每个文件中文件名的一部分

如何在 bash 脚本中使用 (basename "${video%.*}") 获取文件名的一部分?

通过使用 bash 脚本删除现有文件名的一部分来重命名文件

Bash 脚本更改动态变量上的文件夹路径的一部分

在bash中获取列表的一部分

Bash脚本等待流程的一部分

如何在bash shell中grep文件的一部分

在XML文件中使用bash查找并替换字符串的一部分

如何使用bash脚本选择txt文件的一部分?

Bash:将第n行用作命令行的一部分

Bash脚本无法将变量识别为路径的一部分

将字符串检查到文件中并提取一部分以将其写入文件中的 BASH

获取文件名的一部分

提取文件名的一部分

剥离文件名的一部分

检索文件名的一部分

使用gnu-coreutils,bash获取二进制文件的一部分

排序文件,然后按原始顺序打印出一部分-Bash

如何在bash中使用sed按节获取ini文件的一部分

Bash:如何从for循环中的多个文件的数组中删除目录的第一部分?

在编写Bash脚本时,如何创建然后以日期作为名称一部分的文件?

Python更改文件名的一部分

BASH读了一行,但只评估了一部分

当文件名是python中的变量时,如何更改文件名的一部分?

将文件名的最后一部分移到开头