Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
нужен простенький скрипт) |

20.03.2008, 22:12
|
|
Познающий
Регистрация: 13.03.2007
Сообщений: 55
Провел на форуме: 297449
Репутация:
17
|
|
нужен простенький скрипт)
умя есь список фтп в таком виде
ftp.user.com l:12345 p:1234
надо что-бы меняло на
log  ass@ftp.user.com
|
|
|

20.03.2008, 22:41
|
|
Banned
Регистрация: 12.01.2007
Сообщений: 113
Провел на форуме: 4094601
Репутация:
495
|
|
ftp.txt
Код:
ftp.user.com l:qwer p:11111
ftp.user.com l:qw123 p:1234
ftp.user.com l:qw123 p:4321
ftp.user.com l:q123 p:2314
Код:
perl -ne "/(.+) l:(.+) p:(.+)/&&print \"$2\:$3\@$1\n"" ftp.txt > n_ftp.txt
n_ftp.txt
Код:
qwer:11111@ftp.user.com
qw123:1234@ftp.user.com
qw123:4321@ftp.user.com
q123:2314@ftp.user.com
|
|
|

20.03.2008, 22:43
|
|
Познающий
Регистрация: 14.02.2008
Сообщений: 46
Провел на форуме: 189430
Репутация:
12
|
|
PHP код:
<?php
function rewrites($fn,$str)
{
if(file_exists($fn)):
$f=fopen($fn,w);
for($i=0;$i<=sizeof($str)-1;$i++):
echo '-> '.$str[$i].'<br>';
fwrite($f,$str[$i]."\n");
endfor;
fclose($f);
else: die('not found: <b>'.$fn); endif;
}
$list=file('list.dat');
for($i=0;$i<sizeof($list);$i++)
$massresult[]= str_replace(chr(13), "",chop(preg_replace('~([^\s]+) l:([^\s]+) p:([^\n]+)~', '\\2:\\3@\\1', $list[$i])));
rewrites('newlist.dat',$massresult);
?>
Последний раз редактировалось WVBR; 21.03.2008 в 00:23..
|
|
|

20.03.2008, 22:54
|
|
Познающий
Регистрация: 14.02.2008
Сообщений: 46
Провел на форуме: 189430
Репутация:
12
|
|
newlist.dat chmod-> соответствующий для записи
и строчка
$result=$login[1].':'.$pas[1].'@'.$tmp[0];
не нужна ... зашпарился)
|
|
|

20.03.2008, 23:01
|
|
Познающий
Регистрация: 13.03.2007
Сообщений: 55
Провел на форуме: 297449
Репутация:
17
|
|
Спасибо, только оно один файл из листа делает, а надо что-бы весь файл.
|
|
|

20.03.2008, 23:22
|
|
Познающий
Регистрация: 14.02.2008
Сообщений: 46
Провел на форуме: 189430
Репутация:
12
|
|
кхм... чёт я не вразумил.. сори
как понять - "делает один файл"
а надо - "что-бы весь"
|
|
|

20.03.2008, 23:40
|
|
Познающий
Регистрация: 13.03.2007
Сообщений: 55
Провел на форуме: 297449
Репутация:
17
|
|
тоесть одну строчку из файла.
|
|
|

20.03.2008, 23:58
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме: 6023777
Репутация:
2642
|
|
WVBR, ты как-то всё усложнил
$string - содержимое файла.
Код:
preg_replace('~([^\s]+) l:([^\s]+) p:([^\n]+)~', '\\2:\\3@\\1', $string)
Думаю, получить контент файла и записать в новый ты сможешь.
|
|
|

21.03.2008, 00:04
|
|
Познающий
Регистрация: 14.02.2008
Сообщений: 46
Провел на форуме: 189430
Репутация:
12
|
|
NOmeR1, регулярки ещё плохо рулю ... =)
noisia, исправленно
|
|
|

21.03.2008, 00:43
|
|
Участник форума
Регистрация: 25.05.2007
Сообщений: 290
Провел на форуме: 1740746
Репутация:
435
|
|
файлы list.dat создавать будет new.dat если есть права или сам создай, вопрос конкретно не поняла, но вроде то что нужно))
PHP код:
<?php
$db = "list.dat";
$ndb = fopen("new.dat","r+");
$fn = file($db);
echo "<table border=1>";
for ($i=0; $i<count($fn);$i++)
{
list ($aa,$bb,$cc) = explode (":",$fn[$i]);
$cc = str_replace("\n"," ",$cc);
$cc = str_replace("\r"," ",$cc);
list ($dd,$ff,$ee) = explode (".",$aa);
list ($gg) = explode (" ",$ee);
list ($hh) = explode (" ",$bb);
list ($cc) = explode (" ",$cc);
if(!$ndb){echo "Error file 'new.dat'";}
else
{
fputs ($ndb,$hh.':'.$cc.'@'.$dd.'.'.$ff.'.'.$gg."\n");
echo "<tr><td>".$hh."</td><td>".$cc."</td><td>@</td><td>".$dd.'.'.$ff.'.'.$gg."</td></tr>";
}
}
fclose($ndb);
echo "</table>";
?>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|