【发布时间】:2019-10-15 15:38:42
【问题描述】:
我有一些文件需要递归重命名。所以我执行命令find shop-bill -depth -type f -exec rename -v "s/shop/shop-bill/" {} +,但它给了我以下错误。我对No such file or directory 错误感到困惑,我可以确认这些文件确实存在。
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ find shop-bill -depth -type f -exec rename -v "s/shop/shop-bill/" {} +
Can't rename shop-bill/dto/shop.dto.ts shop-bill-bill/dto/shop.dto.ts: No such file or directory
Can't rename shop-bill/shop.controller.ts shop-bill-bill/shop.controller.ts: No such file or directory
Can't rename shop-bill/shop.entity.ts shop-bill-bill/shop.entity.ts: No such file or directory
Can't rename shop-bill/shop.module.ts shop-bill-bill/shop.module.ts: No such file or directory
Can't rename shop-bill/shop.providers.ts shop-bill-bill/shop.providers.ts: No such file or directory
Can't rename shop-bill/shop.service.ts shop-bill-bill/shop.service.ts: No such file or directory
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ ll shop-bill/dto/shop.dto.ts
-rwxrwxrwx 1 liudonghua liudonghua 879 May 29 17:17 shop-bill/dto/shop.dto.ts*
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ tree shop-bill
shop-bill
├── dto
│ └── shop.dto.ts
├── shop.controller.ts
├── shop.entity.ts
├── shop.module.ts
├── shop.providers.ts
└── shop.service.ts
1 directory, 6 files
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$
奇怪的是,我可以像这样成功执行类似的命令。
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ tree operator-bill
operator-bill
├── dto
│ └── shop.dto.ts
├── shop.controller.ts
├── shop.entity.ts
├── shop.module.ts
├── shop.providers.ts
└── shop.service.ts
1 directory, 6 files
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ find operator-bill -depth -type f -exec rename -v "s/shop/operator-bill/" {} +
operator-bill/dto/shop.dto.ts renamed as operator-bill/dto/operator-bill.dto.ts
operator-bill/shop.controller.ts renamed as operator-bill/operator-bill.controller.ts
operator-bill/shop.entity.ts renamed as operator-bill/operator-bill.entity.ts
operator-bill/shop.module.ts renamed as operator-bill/operator-bill.module.ts
operator-bill/shop.providers.ts renamed as operator-bill/operator-bill.providers.ts
operator-bill/shop.service.ts renamed as operator-bill/operator-bill.service.ts
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ rename -v
Usage:
rename [ -h|-m|-V ] [ -v ] [ -n ] [ -f ] [ -e|-E perlexpr]*|perlexpr
[ files ]
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$ rename -V
/usr/bin/rename using File::Rename version 0.20
liudonghua@desktop-ldh:/mnt/d/code/node/nestjs-sequelize-typescript/src$
【问题讨论】: