批量文件夹重命名

时间:2017-09-17 23:06:05

标签: linux bash shell

我正在尝试获取一个shell脚本来浏览目录并重命名子目录(深度为1)。基本上,我正在寻找它来显示当前目录名称并提示我输入更改名称。要进一步指定,一些文件夹不需要重命名,所以我也在寻找一种跳过文件夹的方法。我在想像

这样的东西
#! /bin/bash

for dname in ./*/; do
        echo $dname
        echo What would you like the new name to be?
        read newdname   
        mv "./$dname" "./$newdname"
done

但这不包括跳过文件夹。我认为它需要一个'if'语句,允许我在提示符处输入'skip'来跳过该文件夹。

1 个答案:

答案 0 :(得分:1)

问题是什么?你想知道如何写if语句吗?可能是这样的:

if [[ $newdname != skip ]] ; then
    mv "./$dname" "./$newdname"
fi

或者你想知道这是不是一个好主意?它可能不是,因为可能需要命名目录'skip'。使用空字符串作为“跳过”更有意义,因为您无法将目录重命名为emtpy名称。在这种情况下,请将条件更改为if [[ $newdname ]]