9 Практических Приёмов Команды seq в Linux

Категория: линукс

seq - не просто печатник чисел, а универсальный строитель для скриптов, тестов и небольших утилит. Ниже - сжатый набор самых полезных приёмов, изложенный простым, "человеческим" языком.

Базовое генерирование чисел

  • seq 5 → 1 2 3 4 5
  • seq 3 7 → 3 4 5 6 7
  • Шаг: seq 1 2 10 → 1 3 5 7 9 (нечётные)
  • Обратный порядок: seq 10 -1 1 → 10 9 ... 1

Дробные числа

seq 0.5 0.3 2.0 → 0.5 0.8 1.1 1.4 1.7 2.0

Пользовательский разделитель

seq -s ", " 1 51, 2, 3, 4, 5

Форматирование вывода

  • Паддинг нулями: seq -f "%02g" 1 10 → 01 02 ... 10
  • Автоматический одинаковый ширин: seq -w 1 100 → 001 002 ... 100

Создание файлов‑заглушек

seq -f "text_%02g.txt" 1 5 | xargs touch

Получаем text_01.txt ... text_05.txt, удобно для сортировки.

 Тестовые файлы с содержимым

for i in $(seq 1 5); do
echo "Тестовый файл №$i" > test_$i.txt
done

Повтор команды заданное число раз

seq 10 | xargs -I{} curl -s http://example.com > /dev/null

Или в цикле: for i in $(seq 1 5); do echo "Hello"; done

Генерация временных меток

start=$(date +%s)
for i in $(seq 0 9); do
date -d "@$((start + i*60))" +"%Y-%m-%d %H:%M:%S"
done

Выдаёт 10 минутных меток без ожидания.

Быстрая проверка портов

for p in $(seq 8000 8010); do
nc -z -w1 localhost $p && echo "Port $p open"
done

seq легко комбинируется с xargs, awk, bc и другими утилитами, превращая простые задачи в однострочные решения. Это небольшая, но мощная "швейцарская ножовка" для любого пользователя терминала.





 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *



Карта сайта
Copyright © 2025  
Clicky