Nano Hash - криптовалюты, майнинг, программирование

Удалить символы «x» в начале имени файла с помощью пакетного сценария

Я часто записываю компакт-диски, скачиваю музыку, фильмы и т. д., и почти у всех файлов есть одна вещь — несколько цифр в начале каждого имени файла, обозначающих порядок. ("01.FILE_1, 02.FILE_2"...) Используя пакетный файл, мне бы очень хотелось иметь возможность удалить первое количество x символов (в данном случае 3), чтобы оно перешло из "05.FILE_5" в "ФАЙЛ_5".

В этой теме: .bat переименовать имя файла удалить первые x символов и последние x символов

@echo off
setlocal enabledelayedexpansion
set X=3
set FOLDER_PATH=.
pushd %FOLDER_PATH%
for %%f in (*) do if %%f neq %~nx0 (
    set "filename=%%~nf"
    set "filename=!filename:~%X%,-%X%!"
    ren "%%f" "!filename!%%~xf"
)
popd

Я нашел инструкции по удалению первых и последних символов, но не могу понять, как изменить код только для начальных символов.

Большое спасибо за помощь! Я новичок в программировании.


  • Добро пожаловать в StackOverflow! Вы получите гораздо больше удовольствия (и лучшие ответы тоже :), если вы покажете, что вы пробовали до сих пор. В приведенном вами примере вы пробовали играть с частью set внутри for? 30.06.2016
  • Да, я играл в основном со второй линией в части набора. Кто-то спросил в оригинальной теме, как удалить только ПОСЛЕДНИЕ символы, поэтому я попытался сделать что-то противоположное тому, что ответил парень. (Не совсем наоборот, но больше играю с другой частью.) Не повезло, я не совсем знаком с пакетным синтаксисом, поэтому это было в значительной степени предположением и проверкой. 30.06.2016
  • Как насчет разделения всего до первого . в именах ваших файлов (set "filename=!filename:*.=!")? или вам всегда нужно удалить ровно три символа? 01.07.2016

Ответы:


1

Вы должны изменить ответ Эйтана Т следующим образом:

@echo off
setlocal enabledelayedexpansion
set X=3
set FOLDER_PATH=.
pushd %FOLDER_PATH%
for %%f in (*) do if %%f neq %~nx0 (
    set "filename=%%~nf"
    set "filename=!filename:~%X%!"
    ren "%%f" "!filename!%%~xf"
)
popd

См. это для получения дополнительной информации о переменных подстроках.

30.06.2016
  • Благодарю вас! Именно то, что я искал 01.07.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..