自制Linux重命名命令
2016-06-30 13:01
489 查看
相比于Windows上的ren命名,Linux还真的是没有一个特定的重命名的命令。(虽然可以间接的使用mv来实现)。下面我就来自己写一个简单的重命名命令。
Shell:我用的系统默认的bash,(其实这个无所谓了)
基础: 了解关于shell脚本的基本的语法即可。
首先:
我们需要赋予此文件以执行权限,否则只能通过shell解释器间接的执行了。
chmod 755 rename.sh
然后:
是关于位置变量的介绍以及使用。$0代表本可执行文件,如./rename.sh
$1: 指的是执行此命令时的第一个参数
$2: 指的是执行此命令时的第二个参数
$? 为上一条命令执行成功与否的返回值,成功则返回0,否则不为0
最后:
然后到了最重要的一步了,那就是参数使用的时候需要注意:
单文件:对于单文件只需要注意文件名称即可
目录: 对于目录文件,两个参数的末尾必须都加上’/’,否则会出错。这是由于mv指令默认的要求。
准备工作
操作系统: Linux内核的系统都可以Shell:我用的系统默认的bash,(其实这个无所谓了)
基础: 了解关于shell脚本的基本的语法即可。
代码实现
#!/bin/bash #filename: rename.sh #description: rename file or directory by batch #attention: when rename directory,please end them both with '/' oldname=$1 newname=$2 mv $oldname $newname if [ $? -eq 0 ];then echo Rename Success; else echo Rename Failed!; fi
使用分析
关于这个命令的使用,有以下要进行讨论的地方。首先:
我们需要赋予此文件以执行权限,否则只能通过shell解释器间接的执行了。
chmod 755 rename.sh
然后:
是关于位置变量的介绍以及使用。$0代表本可执行文件,如./rename.sh
$1: 指的是执行此命令时的第一个参数
$2: 指的是执行此命令时的第二个参数
$? 为上一条命令执行成功与否的返回值,成功则返回0,否则不为0
最后:
然后到了最重要的一步了,那就是参数使用的时候需要注意:
单文件:对于单文件只需要注意文件名称即可
目录: 对于目录文件,两个参数的末尾必须都加上’/’,否则会出错。这是由于mv指令默认的要求。
使用方式示例
这里可以把这条命令的路径添加到我们的环境变量中,这样我们就可以不敲此命令的完整的路径就可以很好的执行了。方法如下:export PATH="$PATH":"/home/mark/temp/myscripts/rename.sh" # 我的rename.sh路径如上所示
# 对单文件 rename.sh temp.txt tmp.txt # 对目录文件 rename.sh directory1/ directory2/
相关文章推荐
- 自制Linux重命名命令
- 一天一条Linux指令-find
- linux打包压缩命令
- Hadoop 2.7.1 集群搭建 基于CentOS 6.2
- 每日一linux命令(21)-------find命令之xargs
- Linux常用命令--file
- CentOS镜像使用帮助
- CentOS命令行安装VMware tools
- linux之sed用法
- sysstat linux系统性能分析
- (转)linux IO 内核参数调优 之 参数调节和场景分析
- 与 Linux 一同驾车奔向未来
- 每天一个linux命令(26)--用SecureCRT来上传和下载文件
- mysql 5.7.13 linux 安装 配置
- Linux 添加ssh 公钥访问
- Linux 进程控制——进程调度
- Linux 学习_在虚拟机上面安装RedHat 9(图+文)
- 安装MySQLdb for centos 7--小白教程
- Linux下通过源码编译安装程序(configure/make/make install的作用 )
- Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux ...