function every() { sed -n -e "${2}q" -e "0~${1}p" ${3:-/dev/stdin}; }
Команда every
использует команду sed
для вывода каждой N-ой строки из файла. Команда принимает три аргумента: N — номер строки, которую нужно вывести, предел — количество строк, которые нужно вывести, и имя файла (необязательный аргумент). Если имя файла не указано, команда будет считывать данные со стандартного ввода.
Альтернативой этой команде может быть использование команды awk
с параметром NR % N == 0
, чтобы выбрать каждую N-ую строку. Например, awk 'NR % N == 0' file.txt
будет выводить каждую N-ую строку из файла file.txt
.