文件名大小写批量转换

由于 GAMIT/GLOBK 程序在进行基线解算时,只能识别小写字母命名的观测文件,大写字母命名的文件在解算时容易出错。因此,在数据处理之前要先做好文件名的标准化。对于大量数据,手动进行文件重命名既费时又费力,而用一个程序完成这项工作最好不过了。

本文介绍我写的两个脚本:sh_low2upsh_up2low,实现对指定文件夹内的所有文件进行文件名的大小写转换。脚本使用 C Shell 语言编写,适用于 UNIX/Linux 操作系统。

环境配置

要使用这两个脚本,你需要保证系统安装了 C Shell 或 TC Shell 解释器。对于 CentOS、Fedora 或 RHEL 等 Linux 发行版,系统已经默认安装了该解释器,如果你用的是 Ubuntu 等发行版,首先使用命令:

1
$ sudo apt-get install csh

安装 C Shell 语言解释器。提示程序安装成功之后,下载脚本文件并把它们放到你的 Shell 搜索路径下(比如 GAMIT/GLOBK 安装目录下的 com 文件夹,或者 /usr/bin 文件夹)。然后在脚本文件所在目录下执行两个命令:

1
2
$ chmod +x sh_up2low
$ chmod +x sh_low2up

为这两个脚本添加可执行权限。再重新加载一下 C Shell / TC Shell 配置文件(.cshrc 文件)或直接注销重新登录系统。之后你就可以快乐地使用它们了。

使用说明

脚本说明:

1
2
$ sh_up2low -dir <path>    # 大写转小写,<path> 为目标文件夹
$ sh_low2up -dir <path> # 小写转大写

例子:

将 ~/document/RINEX 目录内的所有文件的文件名更名为小写:

1
$ sh_up2low –dir ~/document/RINEX

将当前目录的所有文件的文件名更名为大写:

1
$ sh_low2up –dir ./

将当前目录下的 RINEX 文件夹和 IGS 文件夹下的所有文件更名为小写:

1
$ sh_up2low –dir RINEX/ IGS/

命令使用方法记不住怎么办?直接输入脚本名回车就可以查看帮助!

最后,下载链接依旧在本站的下载页面。