我有多个目录,每个目录上都有多个文件。每个目录上的每个文件都遵循相同的结构。
enter code here
.
├── one
│ ├── alpha.yaml
│ └── beta.yaml
├── three
│ ├── alpha.yaml
│ └── beta.yaml
└── two
├── alpha.yaml
└── beta.yaml
我将使用相关目录名称重命名所有文件,即:
.
├── one
│ ├── one_alpha.yaml
│ └── one_beta.yaml
├── three
│ ├── three_alpha.yaml
│ └── three_beta.yaml
└── two
├── two_alpha.yaml
└── two_beta.yaml
我尝试了一些for循环命令,但这些命令正在删除:
for i in *; do mv "$i/_alpha.yaml" "$i/$i_alpha.yaml" ; do
答案 0 :(得分:0)
您可以在python中使用os.rename来做到这一点:
import os
basepath = './'
for dirname, dirnames, filenames in os.walk(basepath):
for singleFile in filenames:
os.rename(singleFile, dirname + '_' + singleFile)
让我知道它是否有效