使用 `$empty` 重命名所有空文件夹

使用 `$empty` 重命名所有空文件夹

我有很多文件夹,文件夹名称中包含太多内容empties,我需要删除所有empty文件夹并保留$1.empty

当然,我的逻辑在这里是有缺陷的,因为我不确定如何获取new文件名。我只能从正则表达式中获取匹配的内容。

#!/bin/sh

for I in `cat filelist`;
do
     # for renaming, use mv
    NEWNAME = `$I.empty`
    echo $NEWNAME 
done

目标是替换包含 的文件夹$ empty.empty$.empty不包含 的文件夹empty.empty应保留。

在此处输入图片描述

答案1

使用rename

rename 's/ empty\.empty$/.empty/' *empty.empty

您可能需要安装rename

sudo apt install rename

替代纯的bash

for d in *empty; do
    mv -i "$d" "${d% empty*}.empty"
done

相关内容