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

как сделать цикл в пакетном режиме?

Я хочу создать что-то вроде этого

dup.bat infile outfile times

пример использования будет

dup.bat a.txt a5.txt 5

при этом будет создан файл a5.txt, в котором содержимое файла .txt повторяется 5 раз.

однако я не знаю, как сделать цикл for в пакетном режиме, как это сделать?


  • Я немного не уверен в том, чего вы пытаетесь достичь. Просто получить содержимое .txt и вставить его 5 раз в 5.txt? Если это так, я думаю, что было бы более уместно использовать PowerShell и вызов Get-Content. Для справки, хотя цикл в пакетном режиме просто для. ss64.com/nt/for.html 08.04.2011
  • Пакет @Mike Soule более универсален, и я знаю, что это можно сделать с его помощью. 09.04.2011

Ответы:


1

Вы можете сделать цикл следующим образом:

SET infile=%1
SET outfile=%2
SET times=%3

FOR /L %%i IN (1,1,%times%) DO (
    REM do what you need here
    ECHO %infile%
    ECHO %outfile%
)

Затем, чтобы взять входной файл и повторить его, вы можете использовать MORE с перенаправлением, чтобы добавить содержимое входного файла в выходной файл. Обратите внимание, что предполагается, что это текстовые файлы.

@ECHO off
SET infile=%1
SET outfile=%2
SET times=%3

IF EXIST %outfile% DEL %outfile%
FOR /L %%i IN (1,1,%times%) DO (
    MORE %infile% >> %outfile%
)
08.04.2011

2

Для аргументов командной строки

set input=%1
set output=%2
set times=%3

Чтобы выполнить простой цикл for, прочитайте из файла input и запишите в файл output:

FOR /L %%i IN (1,1,%times%) DO (
    FOR /F %%j IN (%input%) DO (
        @echo %%j >> %output%
    )      
)

Вместо того, чтобы принимать выходной файл, вы также можете сделать это через командную строку:

dup.bat a.txt 5 > a5.txt
08.04.2011

3

вздыхает

Компактный дизайн:

SETLOCAL ENABLEDELAYEDEXPANSION
SET times=5
:Beginning
IF %times% NEQ 0 (TYPE a.txt>>a5.txt & SET /a times=%times%-1 & GOTO Beginning) ELSE ( ENDLOCAL & set times= & GOTO:eof)

Легкое чтение:

SETLOCAL ENABLEDELAYEDEXPANSION
SET times=5
:Beginning
IF %times% NEQ 0 (
TYPE a.txt>>a5.txt
SET /a times=%times%-1
GOTO Beginning
) ELSE (
ENDLOCAL
set times=
GOTO:eof
)

Установите свой счетчик (times=5) Запустите подпрограмму Начало Если ваш счетчик не равен 0, прочитайте файл .txt и ПРИСОЕДИНИТЕ его содержимое к файлу a5.txt, затем уменьшите свой счетчик на 1. Это будет повторяться пять раз, пока ваш счетчик не станет равным 0 , тогда он очистит вашу переменную и завершит скрипт. SET ENABLEDELAYEDEXPANSION важен для увеличения переменных внутри циклов.

08.06.2011
Новые материалы

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

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

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

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

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

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

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