UNIX:如何将所有隐藏文件更改为在多个子目录中可见

Ort*_*och 4 linux rename files dot-files

我在一个目录中有数百个子目录,其中都有隐藏文件,我需要删除它们开头的句点以使它们可见。我找到了一个进入每个目录并更改它们以使它们可见的命令,但我需要知道如何使该命令从一个目录开始工作。

rename 's/\.//;' .*
Run Code Online (Sandbox Code Playgroud)

Sat*_*ura 5

使用 GNU find

find /some/path -type f -name '.*' -execdir sh -c 'mv -i "$0" "./${0#./.}"' {} \;
Run Code Online (Sandbox Code Playgroud)

使用 Perl rename

find /some/path -type f -name '.*' -exec prename -i -n 's!.*/\K\.!!' {} +
Run Code Online (Sandbox Code Playgroud)

-n当您对结果满意时删除)。