А что оригинальное решение должно было делать? Объединить через запятые все строки из файла в одну? Непонятно зачем удалять по одному пробельному символу из каждой строки и зачем запятая в самом конце. И какой формат файла edu.txt
Чтоб посмотреть как работает можно сказать perl -MO=Deparse -0777pe "y.\n .,." edu.txt
Объединить через запятые все строки из файла в одну? Угу...
Непонятно зачем удалять по одному пробельному символу из каждой строки Потому что он там есть ;-)
и зачем запятая в самом конце Потому что мне не лень ее потом удалить ;-)
И какой формат файла edu.txt Это перенаправленный в файл вывод запроса SELECT ITEM_ID FROM ITEM WHERE=.... Мне единоразово нужен был список идов через запятую...
Оно таки получается через две запятые, ибо ===================== $ perl -MO=Deparse -0777pe "y.\n .,." edu.txt BEGIN { $/ = undef; $\ = undef; } LINE: while (defined($_ = )) { tr/\n /,/; } continue { print $_; } ==================== и пробел и перевод строки заменяется на запятую...
Таки нужный эффект достигается путем perl -0777pe "y.\n.,." edu.txt
Тока я все равно не понимаю что это за такая странная нотация y.\n.,. Какой мануал читать?
тогда perl -0777pe "y/\n /,/d" edu.txt пробелы удалит
читать perdoc perlop, начиная с Quote and Quote-like operators 'y' - это второе имя оператора 'tr' ограничители, обычно прямые слэши, могут быть любыми символами, либо парными скобками, tr/a/b/, tr{a}{b}, tr#a#b# и т.п.
no subject
Date: 2007-01-30 01:33 pm (UTC)no subject
Date: 2007-01-30 02:10 pm (UTC)no subject
Date: 2007-01-30 02:13 pm (UTC)Тока оно по две запятые добавляет...
А как работает -- так и не понял... ;-)
no subject
Date: 2007-01-30 02:47 pm (UTC)Непонятно зачем удалять по одному пробельному символу из каждой строки и зачем запятая в самом конце. И какой формат файла edu.txt
Чтоб посмотреть как работает можно сказать
perl -MO=Deparse -0777pe "y.\n .,." edu.txt
no subject
Date: 2007-02-04 09:20 am (UTC)Угу...
Непонятно зачем удалять по одному пробельному символу из каждой строки
Потому что он там есть ;-)
и зачем запятая в самом конце
Потому что мне не лень ее потом удалить ;-)
И какой формат файла edu.txt
Это перенаправленный в файл вывод запроса SELECT ITEM_ID FROM ITEM WHERE=....
Мне единоразово нужен был список идов через запятую...
Оно таки получается через две запятые, ибо
=====================
$ perl -MO=Deparse -0777pe "y.\n .,." edu.txt
BEGIN { $/ = undef; $\ = undef; }
LINE: while (defined($_ = )) {
tr/\n /,/;
}
continue {
print $_;
}
====================
и пробел и перевод строки заменяется на запятую...
Таки нужный эффект достигается путем perl -0777pe "y.\n.,." edu.txt
Тока я все равно не понимаю что это за такая странная нотация y.\n.,. Какой мануал читать?
no subject
Date: 2007-02-05 09:28 am (UTC)читать perdoc perlop, начиная с Quote and Quote-like operators
'y' - это второе имя оператора 'tr'
ограничители, обычно прямые слэши, могут быть любыми символами, либо парными скобками, tr/a/b/, tr{a}{b}, tr#a#b# и т.п.