Что: 9ac0b9d604908f72855fe120986a102220dd369f
Когда: 2021-02-10 19:02:13+03:00
Темы: perl tip
perl -lane У awk удобный способ задания какие колонки текста и как надо распечатать. cut не будет ему заменой (даже учитывая 162386cf9a9eb0fb4237c48a7e3862f3ef8a8c60), ибо он не может нормально переставить колонки местами или иметь негативную нумерацию колонок. perl конечно же всё это может, но я не знал про "-a" опцию, которая автоматом делает split $_ в @F. А "-l" автоматом позволит сделать newspace на выходе удобно. В итоге распечатка последней, а дальше со второй по четвёртую колонки можно сделать так: perl -lane 'print "@F[$#F, 1..3]"' Я и про возможности указания индексов массива то забыл уже в нём. А разделитель можно указать через "-F" (-F: например). Всё же Perl очень крут в плане удобства и возможностей. Часто стал видеть в разных примерах использование say вместо print. В книгах которые читал -- say не припомню. Отличается тем, что добавляет перевод сразу. Но он является некой (тут я уже не понимаю) опциональной фичей и поэтому просто "-e" не сработает. perl -anE 'say "@F[$#F, 1..3]"'
Сгенерирован: SGBlog 0.34.0