Войти

Показать полную графическую версию : [решено] добавление не достающих ссылок следуя нумерации


Alexander_88
02-11-2021, 10:37
Здравствуйте … Подскажите, как можно добавить недостающие ссылки следуя нумерации, то есть добавить те номера, которые отсутствуют.

Пример:

есть txt файл с ссылками:

https://k2s.cc/file/74gsjddf53/0001start.mp4
https://k2s.cc/file/f0bmfg86d/0002start.mp4
https://k2s.cc/file/82cdsfgs7879/0003start.mp4
https://k2s.cc/file/2ca5fj414b6/0004start.mp4
https://k2s.cc/file/a2bfgjfs0dbf1/0005start.mp4
https://k2s.cc/file/484df773a/0006start.flv
https://k2s.cc/file/56cdfdabd7/0007start.flv
https://k2s.cc/file/613bdgdfg632/0009start.mp4
https://k2s.cc/file/e95bdfhdfha2557/0010start.mp4
https://k2s.cc/file/df3f1vcj74f2/0011start.mp4
https://k2s.cc/file/0c7erert450f6/0012start.mp4
https://k2s.cc/file/bd9srtey50f7a/0013start.mp4
https://k2s.cc/file/bbb8fgj22c7d1/0014start.mp4
https://k2s.cc/file/c5b0awet3652/0015start.mp4
https://k2s.cc/file/a3c83fgj0abd4/0016start.mp4
https://k2s.cc/file/4328aj34bd5f2/0017start.mp4
https://k2s.cc/file/90fb6sj6187/0018start.mp4
https://k2s.cc/file/055xn72ec7db/0019start.mp4
https://k2s.cc/file/e27xxn6b45f/0020start.mp4
https://k2s.cc/file/1804xn6fad3/0021start.mp4
https://k2s.cc/file/a47d4xxn9d8c/0022start.mp4
https://k2s.cc/file/89dnxbc13b/0024start.mp4
https://k2s.cc/file/9cesf0bh163/0025start.mp4
https://k2s.cc/file/5bs2fgh65e98b/0026start.mp4
https://k2s.cc/file/daach76d0efdeb/0027start.mp4
https://k2s.cc/file/be4cj8b4ee6f8e/0029start.mp4
https://k2s.cc/file/764ffgh819eaa5/0030start.mp4
https://k2s.cc/file/ff5bd6fgh6d4c7/0031start.mp4
https://k2s.cc/file/9d22adfg0d34e/0032start.mp4
https://k2s.cc/file/7438gfjfe5d5a2/0033start.mp4
https://k2s.cc/file/b532sdg7141b5/0036start.mp4
https://k2s.cc/file/c575df1616937/0037start.mp4
https://k2s.cc/file/a4a46fgj6e1f424/0038start.mp4
https://k2s.cc/file/2332dfha124a61/0039start.mp4
https://k2s.cc/file/40cbsdg65a8737/0040start.mp4
https://k2s.cc/file/ee6dfh4c8408/0041start.mp4
https://k2s.cc/file/93cvh46f6aa0/0042start.mp4
https://k2s.cc/file/302ert64dbf64/0043start.mp4
https://k2s.cc/file/1c49bsdf969/0044start.mp4
https://k2s.cc/file/d8360sdf6710/0045start.mp4

Номера будем смотреть в имени файлах в ссылках (в конце ссылки). Необходимо определять номер самой верхней ссылки и номер самой нижней ссылки (это будет самый минимальный и самый максимальный номер). Далее нужно определить Какие номера отсутствуют. В данном примере отсутствуют номера: 8, 23, 28, 34, 35. Скрипт должен добавить недостающие ссылки с пропущенными номерами, расширение поставить mp4, а вместо id ссылки написать "delete link".

Если применить скрипт к вышеуказанному примеру, то результат должен быть такой:

https://k2s.cc/file/74gsjddf53/0001start.mp4
https://k2s.cc/file/f0bmfg86d/0002start.mp4
https://k2s.cc/file/82cdsfgs7879/0003start.mp4
https://k2s.cc/file/2ca5fj414b6/0004start.mp4
https://k2s.cc/file/a2bfgjfs0dbf1/0005start.mp4
https://k2s.cc/file/484df773a/0006start.flv
https://k2s.cc/file/56cdfdabd7/0007start.flv
https://k2s.cc/file/delete link/0008start.mp4
https://k2s.cc/file/613bdgdfg632/0009start.mp4
https://k2s.cc/file/e95bdfhdfha2557/0010start.mp4
https://k2s.cc/file/df3f1vcj74f2/0011start.mp4
https://k2s.cc/file/0c7erert450f6/0012start.mp4
https://k2s.cc/file/bd9srtey50f7a/0013start.mp4
https://k2s.cc/file/bbb8fgj22c7d1/0014start.mp4
https://k2s.cc/file/c5b0awet3652/0015start.mp4
https://k2s.cc/file/a3c83fgj0abd4/0016start.mp4
https://k2s.cc/file/4328aj34bd5f2/0017start.mp4
https://k2s.cc/file/90fb6sj6187/0018start.mp4
https://k2s.cc/file/055xn72ec7db/0019start.mp4
https://k2s.cc/file/e27xxn6b45f/0020start.mp4
https://k2s.cc/file/1804xn6fad3/0021start.mp4
https://k2s.cc/file/a47d4xxn9d8c/0022start.mp4
https://k2s.cc/file/delete link/0023start.mp4
https://k2s.cc/file/89dnxbc13b/0024start.mp4
https://k2s.cc/file/9cesf0bh163/0025start.mp4
https://k2s.cc/file/5bs2fgh65e98b/0026start.mp4
https://k2s.cc/file/daach76d0efdeb/0027start.mp4
https://k2s.cc/file/delete link/0028start.mp4
https://k2s.cc/file/be4cj8b4ee6f8e/0029start.mp4
https://k2s.cc/file/764ffgh819eaa5/0030start.mp4
https://k2s.cc/file/ff5bd6fgh6d4c7/0031start.mp4
https://k2s.cc/file/9d22adfg0d34e/0032start.mp4
https://k2s.cc/file/7438gfjfe5d5a2/0033start.mp4
https://k2s.cc/file/delete link/0034start.mp4
https://k2s.cc/file/delete link/0035start.mp4
https://k2s.cc/file/b532sdg7141b5/0036start.mp4
https://k2s.cc/file/c575df1616937/0037start.mp4
https://k2s.cc/file/a4a46fgj6e1f424/0038start.mp4
https://k2s.cc/file/2332dfha124a61/0039start.mp4
https://k2s.cc/file/40cbsdg65a8737/0040start.mp4
https://k2s.cc/file/ee6dfh4c8408/0041start.mp4
https://k2s.cc/file/93cvh46f6aa0/0042start.mp4
https://k2s.cc/file/302ert64dbf64/0043start.mp4
https://k2s.cc/file/1c49bsdf969/0044start.mp4
https://k2s.cc/file/d8360sdf6710/0045start.mp4

Примечание: имя файла всегда одинаковое, но неизвестно Какое … также неизвестно где располагается имя файла (до номера или после)..

варианты имен файлов:
####name.расширение
name####.расширение

где name - всегда одно и то же слово (но неизвестно какое).
#### - номер.

Номер всегда состоит из 4 цифр, Верхняя ссылка всегда с самым меньшим номером, а Нижняя ссылка с самым большим номером, нумерация идёт по порядку.
:)

megaloman
02-11-2021, 14:42
@Echo Off
cls
Set "FileIn=Z:\Box_In\txt файл со ссылками 2.txt"
Set "FileOut=Z:\Box_In\txt файл со ссылками 2 обработанный.txt"

Set "https=https://k2s.cc/file/"
Set "Dhttps=%https%delete link/"

Set /A Num=4

Set /A i=0
Set "Rhttps=%https:.=\.%"
Set "RNum="
For /L %%i In (1,1,%Num%) Do Call Set "RNum=%%RNum%%[0-9]"

>"%FileOut%" ( For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^%Rhttps%[^/]*/%RNum%[^/]*\.[^/]*$" "%FileIn%"`) Do Call :OutFile 1 "%%f")
>>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^%Rhttps%[^/]*/[^/]*%RNum%\.[^/]*$" "%FileIn%"`) Do Call :OutFile 2 "%%f")
pause
Exit /B

:OutFile
Set "Name=%~n2"
If %1 EQU 1 (Call Set /A N=1%%Name:~0,%Num%%%) Else (Call Set /A N=1%%Name:~-%Num%%%)
If %i% EQU 0 Set /A i=%N%-1

:Begin
Set /A i+=1
If %i% EQU %N% (Echo %~2& Exit /B 0)
Set "NN=%N:~1%"
Set "ii=%i:~1%"
(Call Echo %Dhttps%%%Name:%NN%=%ii%%%%~x2)
GoTo :Begin
Exit /B

Sham
02-11-2021, 17:14
На jscript. Меняет исходный файл, который берётся из аргументов.

var filename = WSH.Arguments.Unnamed.length ? WSH.Arguments.Unnamed.Item(0) : '';

var fso = new ActiveXObject("Scripting.FileSystemObject");
try {
var txt = fso.OpenTextFile(filename, 1, false, -2).ReadAll();
var fw = fso.OpenTextFile(filename, 2, true, -2);
} catch (e) {
WSH.Quit(666);
}

var regex1 = /^http.+$/mgi;
var regex2 = /^(.+?\/file)\/([^\/]+)\/(\w*?)(\d{4})(\w*)\.\w{2,6}/i;
var matches1 = txt.match(regex1), start = 0, end = 0, cur = 0, matches2 = {};

for (var i = 0, u = []; i < matches1.length; i++) {
u = regex2.exec(matches1[i]);
if (!u) continue;
cur = parseInt(u[4], 10);
matches2[cur] = u;
if (!start) start = cur
}

end = cur;

for (var i = start, s = '', pre = '', num = '', nl = 0; i <= end; i++) {
if (matches2[i]) {
s = matches2[i][0];
pre = matches2[i];
} else if (pre) {
num = i.toString(10);
nl = pre[4].length - num.length;
for (var y = 0; y < nl; y++)
num = '0' + num;
s = pre[1] + '/delete link/' + pre[3] + num + pre[5] + '.mp4';
}

fw.WriteLine(s);
}

fw.Close();

Alexander_88
02-11-2021, 19:49
Спасибо всем за ответы, завтра вечерком будут тестировать :)

megaloman
02-11-2021, 20:01
Alexander_88, варианты имен файлов:
####name.расширение
name####.расширение »Не совсем понял, в моём предыдущем посте я предполагал, что в одном файле формат имён одинаквый. Если в файле смесь форматов, но нумерация по прежнему сплошная от минимума к максимуму, то вот вариант:@Echo Off
cls
Set "FileIn=Z:\Box_In\txt файл со ссылками.txt"
Set "FileOut=Z:\Box_In\txt файл со ссылками обработанный.txt"

Set "https=https://k2s.cc/file/"
Set "Dhttps=%https%delete link/"

Set /A Num=4

Set /A i=0
Set "Rhttps=%https:.=\.%"
Set "RNum="
For /L %%i In (1,1,%Num%) Do Call Set "RNum=%%RNum%%[0-9]"

>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^%Rhttps%[^/]*/[^/]*%RNum%[^/]*\.[^/]*$" "%FileIn%"`) Do Call :OutFile "%%f")
pause
Exit /B

:OutFile
Set "Name=%~n1"
Set /A Log=1
Echo %Name%| >nul 2>&1 FindStr /I /R /C:"^[^/]*%RNum%$"&&Set /A Log=2

If %Log% EQU 1 (Call Set /A N=1%%Name:~0,%Num%%%) Else (Call Set /A N=1%%Name:~-%Num%%%)
If %i% EQU 0 Set /A i=%N%-1

:Begin
Set /A i+=1
If %i% EQU %N% (Echo %~1& Exit /B 0)
Set "NN=%N:~1%"
Set "ii=%i:~1%"
(Call Echo %Dhttps%%%Name:%NN%=%ii%%%%~x1)
GoTo :Begin
Exit /B

megaloman
03-11-2021, 14:10
Alexander_88, @Echo Off
cls
rem Set "FileIn=Z:\Box_In\txt файл со ссылками 2.txt"
rem Set "FileOut=Z:\Box_In\обработанный 2 txt файл со ссылками.txt"

Set "FileIn=fileslink.txt"
Set "FileOut=fileslink2.txt"

Set "Dhttps=delete link delete link delete link"

Set /A Num=4

Set /A i=0
Set "RNum="
For /L %%i In (1,1,%Num%) Do Call Set "RNum=%%RNum%%[0-9]"

>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^.*/%RNum%[^/]*\.[^/]*$" "%FileIn%"`) Do Call :OutFile 1 "%%f")
>>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^.*/[^/]*%RNum%\.[^/]*$" "%FileIn%"`) Do Call :OutFile 2 "%%f")
pause
Exit /B

:OutFile
Set "Name=%~n2"
If %1 EQU 1 (Call Set /A N=1%%Name:~0,%Num%%%) Else (Call Set /A N=1%%Name:~-%Num%%%)
If Not %i% EQU 0 GoTo :Begin

Set /A i=%N%-1
Set "https=%~2"
Call Set "https=%%https:/%~nx2=%%"

For %%h In ("%https%") Do Set "Nhttps=%%~nxh"
Call Set "https=%%https:/%Nhttps%=%%"

:Begin
Set /A i+=1
If %i% EQU %N% (Echo %~2& Exit /B 0)
Set "NN=%N:~1%"
Set "ii=%i:~1%"
(Call Echo %https%/%Dhttps%/%%Name:%NN%=%ii%%%%~x2)
GoTo :Begin
Exit /B@Echo Off
cls
rem Set "FileIn=Z:\Box_In\txt файл со ссылками 2.txt"
rem Set "FileOut=Z:\Box_In\обработанный 2 txt файл со ссылками.txt"

Set "FileIn=fileslink.txt"
Set "FileOut=fileslink2.txt"

Set "Dhttps=delete link delete link delete link"

Set /A Num=4

Set /A i=0
Set "RNum="
For /L %%i In (1,1,%Num%) Do Call Set "RNum=%%RNum%%[0-9]"

>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^.*/[^/]*%RNum%[^/]*\.[^/]*$" "%FileIn%"`) Do Call :OutFile "%%f")
pause
Exit /B

:OutFile
Set "Name=%~n1"
Set /A Log=1
Echo %Name%| >nul 2>&1 FindStr /I /R /C:"^[^/]*%RNum%$"&&Set /A Log=2

If %Log% EQU 1 (Call Set /A N=1%%Name:~0,%Num%%%) Else (Call Set /A N=1%%Name:~-%Num%%%)
If Not %i% EQU 0 GoTo :Begin

Set /A i=%N%-1
Set "https=%~1"
Call Set "https=%%https:/%~nx1=%%"

For %%h In ("%https%") Do Set "Nhttps=%%~nxh"
Call Set "https=%%https:/%Nhttps%=%%"
:Begin
Set /A i+=1
If %i% EQU %N% (Echo %~1& Exit /B 0)
Set "NN=%N:~1%"
Set "ii=%i:~1%"
(Call Echo %https%/%Dhttps%/%%Name:%NN%=%ii%%%%~x1)
GoTo :Begin
Exit /B

Alexander_88
03-11-2021, 22:54
Спасибо, взял самый первый вариант … формат в одном файле всегда одинаковые, но в другом файле может быть другой … из последнего сообщения, первый вариант, решил тоже попробовать, но там перед ссылкой выводится путь после диска C, два раза. вот так:

work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0010start.mp4

Alexander_88
04-11-2021, 00:01
Не понял, где выводится, в исходном файле или после обработки? Я проверил все свои варианты, они рабочие на изначальных условиях. Дайте Выши исходные файлы, на которых не идёт. »

в выводящем файле..
скрипт взял
"Если адреса в файле одинаковые. Или ####name.расширение или name####.расширение"
поменял пути файлов:
@Echo Off
cls
Set "FileIn=fileslink.txt"
Set "FileOut=fileslink2.txt"

Set "Dhttps=delete link delete link delete link"

Set /A Num=4

Set /A i=0
Set "RNum="
For /L %%i In (1,1,%Num%) Do Call Set "RNum=%%RNum%%[0-9]"

>"%FileOut%" ( For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^.*/%RNum%[^/]*\.[^/]*$" "%FileIn%"`) Do Call :OutFile 1 "%%f")
>>"%FileOut%" (For /F "usebackq delims=" %%f In (`2^>nul FindStr /I /R /C:"^.*/[^/]*%RNum%\.[^/]*$" "%FileIn%"`) Do Call :OutFile 2 "%%f")
pause
Exit /B

:OutFile
Set "Name=%~n2"
If %1 EQU 1 (Call Set /A N=1%%Name:~0,%Num%%%) Else (Call Set /A N=1%%Name:~-%Num%%%)
If Not %i% EQU 0 GoTo :Begin

Set /A i=%N%-1
Set "https=%~p2"
For %%h In ("%https:~1,-1%") Do Set "https=%%~ph"
Set "https=%https:~1,-1%"
Set "https=%https:\=/%"
Set "https=%https::/=://%"

:Begin
Set /A i+=1
If %i% EQU %N% (Echo %~2& Exit /B 0)
Set "NN=%N:~1%"
Set "ii=%i:~1%"
(Call Echo %https%/%Dhttps%/%%Name:%NN%=%ii%%%%~x2)
GoTo :Begin
Exit /B

а файлы из примера выше:

https://k2s.cc/file/74gsjddf53/0001start.mp4
https://k2s.cc/file/f0bmfg86d/0002start.mp4
https://k2s.cc/file/82cdsfgs7879/0003start.mp4
https://k2s.cc/file/2ca5fj414b6/0004start.mp4
https://k2s.cc/file/a2bfgjfs0dbf1/0005start.mp4
https://k2s.cc/file/484df773a/0006start.flv
https://k2s.cc/file/56cdfdabd7/0007start.flv
https://k2s.cc/file/613bdgdfg632/0009start.mp4
https://k2s.cc/file/e95bdfhdfha2557/0010start.mp4
https://k2s.cc/file/df3f1vcj74f2/0011start.mp4
https://k2s.cc/file/0c7erert450f6/0012start.mp4
https://k2s.cc/file/bd9srtey50f7a/0013start.mp4
https://k2s.cc/file/bbb8fgj22c7d1/0014start.mp4
https://k2s.cc/file/c5b0awet3652/0015start.mp4
https://k2s.cc/file/a3c83fgj0abd4/0016start.mp4
https://k2s.cc/file/4328aj34bd5f2/0017start.mp4
https://k2s.cc/file/90fb6sj6187/0018start.mp4
https://k2s.cc/file/055xn72ec7db/0019start.mp4
https://k2s.cc/file/e27xxn6b45f/0020start.mp4
https://k2s.cc/file/1804xn6fad3/0021start.mp4
https://k2s.cc/file/a47d4xxn9d8c/0022start.mp4
https://k2s.cc/file/89dnxbc13b/0024start.mp4
https://k2s.cc/file/9cesf0bh163/0025start.mp4
https://k2s.cc/file/5bs2fgh65e98b/0026start.mp4
https://k2s.cc/file/daach76d0efdeb/0027start.mp4
https://k2s.cc/file/be4cj8b4ee6f8e/0029start.mp4
https://k2s.cc/file/764ffgh819eaa5/0030start.mp4
https://k2s.cc/file/ff5bd6fgh6d4c7/0031start.mp4
https://k2s.cc/file/9d22adfg0d34e/0032start.mp4
https://k2s.cc/file/7438gfjfe5d5a2/0033start.mp4
https://k2s.cc/file/b532sdg7141b5/0036start.mp4
https://k2s.cc/file/c575df1616937/0037start.mp4
https://k2s.cc/file/a4a46fgj6e1f424/0038start.mp4
https://k2s.cc/file/2332dfha124a61/0039start.mp4
https://k2s.cc/file/40cbsdg65a8737/0040start.mp4
https://k2s.cc/file/ee6dfh4c8408/0041start.mp4
https://k2s.cc/file/93cvh46f6aa0/0042start.mp4
https://k2s.cc/file/302ert64dbf64/0043start.mp4
https://k2s.cc/file/1c49bsdf969/0044start.mp4
https://k2s.cc/file/d8360sdf6710/0045start.mp4

выводится так:

https://k2s.cc/file/74gsjddf53/0001start.mp4
https://k2s.cc/file/f0bmfg86d/0002start.mp4
https://k2s.cc/file/82cdsfgs7879/0003start.mp4
https://k2s.cc/file/2ca5fj414b6/0004start.mp4
https://k2s.cc/file/a2bfgjfs0dbf1/0005start.mp4
https://k2s.cc/file/484df773a/0006start.flv
https://k2s.cc/file/56cdfdabd7/0007start.flv
work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0008start.mp4
https://k2s.cc/file/613bdgdfg632/0009start.mp4
https://k2s.cc/file/e95bdfhdfha2557/0010start.mp4
https://k2s.cc/file/df3f1vcj74f2/0011start.mp4
https://k2s.cc/file/0c7erert450f6/0012start.mp4
https://k2s.cc/file/bd9srtey50f7a/0013start.mp4
https://k2s.cc/file/bbb8fgj22c7d1/0014start.mp4
https://k2s.cc/file/c5b0awet3652/0015start.mp4
https://k2s.cc/file/a3c83fgj0abd4/0016start.mp4
https://k2s.cc/file/4328aj34bd5f2/0017start.mp4
https://k2s.cc/file/90fb6sj6187/0018start.mp4
https://k2s.cc/file/055xn72ec7db/0019start.mp4
https://k2s.cc/file/e27xxn6b45f/0020start.mp4
https://k2s.cc/file/1804xn6fad3/0021start.mp4
https://k2s.cc/file/a47d4xxn9d8c/0022start.mp4
work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0023start.mp4
https://k2s.cc/file/89dnxbc13b/0024start.mp4
https://k2s.cc/file/9cesf0bh163/0025start.mp4
https://k2s.cc/file/5bs2fgh65e98b/0026start.mp4
https://k2s.cc/file/daach76d0efdeb/0027start.mp4
work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0028start.mp4
https://k2s.cc/file/be4cj8b4ee6f8e/0029start.mp4
https://k2s.cc/file/764ffgh819eaa5/0030start.mp4
https://k2s.cc/file/ff5bd6fgh6d4c7/0031start.mp4
https://k2s.cc/file/9d22adfg0d34e/0032start.mp4
https://k2s.cc/file/7438gfjfe5d5a2/0033start.mp4
work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0034start.mp4
work/Scripts/new thread/work/Scripts/new thread/https://k2s.cc/file/delete link delete link delete link/0035start.mp4
https://k2s.cc/file/b532sdg7141b5/0036start.mp4
https://k2s.cc/file/c575df1616937/0037start.mp4
https://k2s.cc/file/a4a46fgj6e1f424/0038start.mp4
https://k2s.cc/file/2332dfha124a61/0039start.mp4
https://k2s.cc/file/40cbsdg65a8737/0040start.mp4
https://k2s.cc/file/ee6dfh4c8408/0041start.mp4
https://k2s.cc/file/93cvh46f6aa0/0042start.mp4
https://k2s.cc/file/302ert64dbf64/0043start.mp4
https://k2s.cc/file/1c49bsdf969/0044start.mp4
https://k2s.cc/file/d8360sdf6710/0045start.mp4

DJ Mogarych
04-11-2021, 10:35
Powershell:

$urls = gc "C:\temp\links.txt" |% {$_ -as [uri]}
$start = ((($urls[0]).segments[-1]) -split '\.')[0] -replace "\D"
$end = ((($urls[-1]).segments[-1]) -split '\.')[0] -replace "\D"

$absent = @()
$start..$end |% {
if (!($urls.originalstring -match ($num = '{0:d4}' -f $_))) {
$absent += "https://k2s.cc/file/delete link/" + $num + "start.mp4"
}
}

$urls.originalstring + $absent |sort {$_ -replace ".*/"}

megaloman
04-11-2021, 13:19
Alexander_88, Исправил. Примите извинения за причинённые неудобства. :) Пробуйте.

Alexander_88
05-11-2021, 18:09
megaloman, Спасибо, теперь даже необязательно домен в скрипте указывать :)

alpap
06-11-2021, 02:06
Предложу и свой вариант
PowerShell

$file = 'file.txt'
$sId = 'delete link'
$ext = 'mp4'

$uName = gc $file|% {([uri]$_).Segments[-1]}
$we = $uName|% {[System.IO.FileInfo]::New($_)}
$name = $we.BaseName|% {[regex]::Match($_, '[\d{4}]*(\D*)[\d{4}]*').Groups[1].Value}
$num = $we.BaseName|% {[regex]::Match($_, '\d{4}').Value}
$l = (gc $file)[0] -Split '/+'
$prf = '{0}//{1}/{2}' -f $l[0], $l[1], $l[2]

1..$num[-1]|% {
$d4 = '{0:d4}' -f $_
if ($d4 -NotIn $num) {'{0}/{1}/{2}{3}.{4}' -f $prf, $sId, $d4, $name[$d4], $ext}
(gc $file)[$d4-1]
}

Тестировал на файле с таким содержимым:


https://k2s.cc/file/74gsjddf53/0001start.mp4
https://k2s.cc/file/f0bmfg86d/0002start.mp4
https://k2s.cc/file/82cdsfgs7879/0003start.mp4
https://k2s.cc/file/2ca5fj414b6/0004start.mp4
https://k2s.cc/file/a2bfgjfs0dbf1/0005start.mp4
https://k2s.cc/file/484df773a/0006start.flv
https://k2s.cc/file/56cdfdabd7/0007start.flv
https://k2s.cc/file/613bdgdfg632/0009start.mp4
https://k2s.cc/file/e95bdfhdfha2557/0010start.mp4
https://k2s.cc/file/df3f1vcj74f2/0011start.mp4
https://k2s.cc/file/0c7erert450f6/aaa0012.mp4
https://k2s.cc/file/bd9srtey50f7a/0013start.mp4
https://k2s.cc/file/bbb8fgj22c7d1/0014start.mp4
https://k2s.cc/file/c5b0awet3652/0015start.mp4
https://k2s.cc/file/a3c83fgj0abd4/0016start.mp4
https://k2s.cc/file/4328aj34bd5f2/0017start.mp4
http://k2s.cc/file/90fb6sj6187/0018start.mp4
https://k2s.cc/file/055xn72ec7db/0019start.mp4
https://k2s.cc/file/e27xxn6b45f/0020start.mp4
https://k2s.cc/file/1804xn6fad3/0021start.mp4
https://k2s.cc/file/a47d4xxn9d8c/0022start.mp4
https://k2s.cc/file/89dnxbc13b/0024start.mp4
https://k2s.cc/file/9cesf0bh163/bbb0025.mp4
https://k2s.cc/file/5bs2fgh65e98b/0026start.mp4
https://k2s.cc/file/daach76d0efdeb/0027start.mp4
https://k2s.cc/file/be4cj8b4ee6f8e/0029start.mp4
https://k2s.cc/file/764ffgh819eaa5/0030start.mp4
https://k2s.cc/file/ff5bd6fgh6d4c7/0031start.mp4
https://k2s.cc/file/9d22adfg0d34e/0032start.mp4
https://k2s.cc/file/7438gfjfe5d5a2/0033start.mp4
https://k2s.cc/file/b532sdg7141b5/0036start.mp4
https://k2s.cc/file/c575df1616937/0037start.mp4
https://k2s.cc/file/a4a46fgj6e1f424/0038start.mp4
https://k2s.cc/file/2332dfha124a61/0039start.mp4
https://k2s.cc/file/40cbsdg65a8737/0040start.mp4
http://k2s.cc/file/ee6dfh4c8408/stop0041.mp4
https://k2s.cc/file/93cvh46f6aa0/0042start.mp4
https://k2s.cc/file/302ert64dbf64/0043start.mp4
https://k2s.cc/file/1c49bsdf969/0044start.mp4
https://k2s.cc/file/d8360sdf6710/0045start.mp4




© OSzone.net 2001-2012