Windows CMD переименовывает * .js.gz в * .js - PullRequest
0 голосов
/ 05 октября 2018

Я пытаюсь переименовать все файлы в папке с расширением от .js.gz до .js.

Я попытался с помощью команды windows ren примерно так:

ren *.js.gz *.js

Это кажется простым делом через командную строку, но не выдает требуемый результат.

В конечном итоге он переименовывает exampleFile.js.gz в example.js.js

Я уверен, что смогу добиться этого с помощью Powershell или с помощью задачи Grunt / Gulp.

Есть ли способ сделать это с помощью простой встроенной команды?

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

В командной строке DOS я набрал: ren " .js.gz" "."

Для меня эта команда отбросила расширение файла .gz.Я хотел бы сделать резервные копии ваших файлов, прежде чем экспериментировать с ними, DOS может иногда давать неожиданные результаты.Я использую Microsoft Windows [Версия 10.0.16299.665].

0 голосов
/ 05 октября 2018

Работа с расширениями может быть сложной.Этот код использует регулярное выражение для создания нового имени файла.Если вы уверены, что файлы будут переименованы правильно, удалите -WhatIf из командлета Move-Item.

Get-ChildItem -File -Filter '*.js.gz' |
    ForEach-Object {
        Move-Item -Path $_.FullName -Destination $($_.FullName -replace '^(.*)\.js\.gz$', '$1.js') -WhatIf
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...