Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Батник на 3 простых действия (http://forum.oszone.net/showthread.php?t=354074)

denisska 22-08-2023 11:03 3014319

Батник на 3 простых действия
 
Здравствуйте. Есть вопрос, который не могу решить вот уже 3 дня, как ни пытался самостоятельно.


Исходные данные
Есть каталог с файлами .txt. В каждом файле количество строк разное. Содержание каждого файла:

234324;http://site.com/1/
464565;http://site.com/3432/
546456;http://site.com/11323/
456456;http://site.com/667667/
...
7899;http://site.com/n/


Что должен делать батник?
1. В каждом файле оставить только 3 первых строки, остальные удалить.
2. В каждом файле оставить только ссылки. Цифры, которые расположены перед ссылками и символ ";" удалить
3. Выбирать рандомно при каждом запуске 3 файла, склеивать данные и создавать новый файл с этими данными.


Что должно получиться в итоге?

При запуске батника должен получиться новый файл в таком виде:
http://site.com/1/
http://site.com/323423/
http://site.com/76867/

http://site.com/342/
http://site.com/657979/
http://site.com/13131/

http://site.com/4554/
http://site.com/4565756/
http://site.com/676867756647/




Всем заранее благодарен за помощь ибо своих сил и знаний не хватает для реализации.

Serguei Kouzmine 22-08-2023 15:28 3014334

своих сил и знаний не хватает для реализации 3 простых действия ? - реализуйте 2 или 1 и приходите

DJ Mogarych 22-08-2023 16:17 3014338

Powershell
Код:

# Каталог с файлами .txt
$srcDir = "D:\temp"
# Папка для нового файла
$dstDir = "D:\temp"

$outFile = "$(get-date -f "yyyy-MM-dd-HH-mm-ss").txt"
dir "$srcDir\*.txt" |get-random -Count 3 |% {
    (gc $_.fullname |select -first 3) -replace '^\d+;' |Out-File "$dstDir\$outFile" -Append -Encoding default
    "" |Out-File "$dstDir\$outFile" -Append -Encoding default
}



Время: 23:57.

Время: 23:57.
© OSzone.net 2001-