1. 首页 > 服务器系统 > Linux

Linux 重命名命令自制详细介绍

Linux 重命名命令

相比于Windows上的ren命名,Linux还真的是没有一个特定的重命名的命令。(虽然可以间接的使用mv来实现)。下面我就来自己写一个简单的重命名命令。

准备工作

  1. 操作系统: Linux内核的系统都可以
  2. Shell:我用的系统默认的bash,(其实这个无所谓了)
  3. 基础: 了解关于shell脚本的基本的语法即可。

代码实现

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/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解释器间接的执行了。

?
1
chmod 755 rename.sh

然后:

是关于位置变量的介绍以及使用。$0代表本可执行文件,如./rename.sh

  • $1: 指的是执行此命令时的第一个参数
  • $2: 指的是执行此命令时的第二个参数
  • $? 为上一条命令执行成功与否的返回值,成功则返回0,否则不为0

最后:

然后到了最重要的一步了,那就是参数使用的时候需要注意:

单文件:对于单文件只需要注意文件名称即可
目录: 对于目录文件,两个参数的末尾必须都加上'/',否则会出错。这是由于mv指令默认的要求。

使用方式示例

这里可以把这条命令的路径添加到我们的环境变量中,这样我们就可以不敲此命令的完整的路径就可以很好的执行了。方法如下:

?
1
2
export PATH="$PATH":"/home/mark/temp/myscripts/rename.sh"
# 我的rename.sh路径如上所示
?
1
2
3
4
5
# 对单文件
rename.sh temp.txt tmp.txt
 
# 对目录文件
rename.sh directory1/ directory2/

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/linux/5738.html

联系我们

在线咨询:点击这里给我发消息

微信号:

工作日:8:30-17:30,节假日休息