From 64e8c04de79e7d67166dd27bdac09a58be0316d3 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Fri, 7 Oct 2022 20:41:02 +0300 Subject: [PATCH] =?utf8?q?=D0=A1=D1=82=D0=B0=D1=82=D1=8C=D1=8F=20=D0=BF?= =?utf8?q?=D1=80=D0=BE=20zmv?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://filipe.kiss.ink/zmv-zsh-rename/ zmv я использую довольно регулярно. Не уверен что это можно назвать killer-feature zsh, ведь её можно было бы написать и вне него, но она очень здорово его дополняет. Не могу я, конечно же, без критики статьи. Автор пишет что zmv вон насколько укорачивает переименование по сравнению с циклом: zmv -n -W '**/*.js' '**/*.ts' # 29 chars for file in **/*.js; do mv $file ${file/.js/.ts}; done; # 56 chars Не соглашусь с ним, так как цикл можно написать ещё короче: for i (**.js) mv $i $i:r.ts Но в любом случае -n опция zmv очень удобна остаётся, так как в цикле придётся писать test-условие чтобы проверить не перезаписали ли мы файл какой лишний. -- 2.50.0