]> Sergey Matveev's repositories - stargrave-blog.git/commitdiff
Статья про zmv
authorSergey Matveev <stargrave@stargrave.org>
Fri, 7 Oct 2022 17:41:02 +0000 (20:41 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Fri, 7 Oct 2022 17:41:02 +0000 (20:41 +0300)
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-условие чтобы проверить не перезаписали ли мы файл
какой лишний.


No differences found