Переименовать большое кол-во файлов

1. SeregaNervous (14.11.2010 / 13:47)
Вобщем такое дело:
Мне нужно переименовать примерно 10000 текстовых файлов.
Имя файла должно браться из первой строки этого файла, типа так:
Файл 71.txt первая строка в нем "Некролог о зарплате".
Нужно чтобы файл переименовало в Nekrolog_o_zarplate.txt
И так все 10к статей. Есть ли такие проги или может скрипты? Буду очень благодарен)

2. Димон (14.11.2010 / 23:31)
1. тебе нужна программа, или код программы?
Я завтра попробую, что-нибудь написать, но не обещаю, что что-то будет.
да... и еще... первая строка должна остаться в файле? Имена файлов идут от 1.txt до 10000.txt, или там разные имена?

3. SeregaNervous (15.11.2010 / 01:31)
Имена разные: кириллические, цифрами(типа 23.txt) и неправильно транслитированые(xaker за место haker).
Первая строка должна остаться. Лучше бы конечно программу) Но мне впринципе всеравно, лижбы работало)

4. finall2 (15.11.2010 / 02:52)
3.На PHP можно за 10мин набросать скрипт.
Было б время,я бы попробывал что-то сделать)

5. Вантуз-мен (15.11.2010 / 03:20)
<?
$files = array_diff(scandir('dirname'), array('.', '..'));
foreach ($files as $name) {
  $file = file($name);
  $newname = translit_name($file[0]);

  rename('dirname/' . $name, 'dirname/' . $newname . '.txt');
} 

$file = file($name); конечно памяти сожрет много, можно оптимизировать, но для разового действия сойдет

<?
function translit_name($str) {
    $tr = array(
        "А"=>"a","Б"=>"b","В"=>"v","Г"=>"g",
        "Д"=>"d","Е"=>"e","Ж"=>"j","З"=>"z","И"=>"i",
        "Й"=>"y","К"=>"k","Л"=>"l","М"=>"m","Н"=>"n",
        "О"=>"o","П"=>"p","Р"=>"r","С"=>"s","Т"=>"t",
        "У"=>"u","Ф"=>"f","Х"=>"h","Ц"=>"ts","Ч"=>"ch",
        "Ш"=>"sh","Щ"=>"sch","Ъ"=>"","Ы"=>"yi","Ь"=>"",
        "Э"=>"e","Ю"=>"yu","Я"=>"ya","а"=>"a","б"=>"b",
        "в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j",
        "з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
        "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
        "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
        "ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y",
        "ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya", 
        " "=> "_", "."=> "", "/"=> "_"
    );
    return strtr($str,$tr);
}
Функция транслита думаю такая сойдет если что поправь ручками или поищи в инете получше

6. SeregaNervous (15.11.2010 / 15:25)
Спс! До компа доберусь попробую!

7. Bogdan Bogdanov (15.11.2010 / 19:00)
http://gazenwagen.com/download/?act=view&file=616

8. Юля (17.11.2010 / 22:23)
7. Bogdan, это не тот переименовщик , но вещь классная

URL: https://visavi.net/topics/15540