(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Изучаем команды Linux: paste

Источник: rus-linux
А. Кривошей

1. Введение

paste - одна из наименее известных команд в GNU/Linux (или других Unix-системах), но люди, занимающиеся написанием скриптов оболочки для синтаксического анализа текста, знают о ней и могут подтвердить ее полезность. Это очень простая команда, всего с двумя опциями, использующаяся для вывода бок о бок строк из двух и более файлов. В связи с простотой команды на этот раз не будет таблицы с примерами использования.

2. Использование paste

Представьте, что у вас есть конфигурационный файл, например .cvsrc, а также более поздняя версия этого файла, скажем .cvsrc.new. Для того, чтобы решить, нужно ли заменять старый файл новым, необходимо наглядно отобразить различия между ними. Под рукой всегда есть команда diff(1), но вы просто хотите просмотреть строки бок о бок, без дополнительных примечаний. По умолчанию paste использует в качестве разделителя TAB, поэтому строки из первого файла (.cvsrc) будут отделены от строк из второго файла (.cvsrc.new). Пример:

$ echo .cvsrc > .cvsrc
$ echo .cvsrc.new > .cvsrc.new
$ cat .cvsrc .cvsrc.new 
.cvsrc
.cvsrc.new
$ paste .cvsrc .cvsrc.new 
.cvsrc  .cvsrc.new

В случае если вам необходимо изменить разделитель, используйте опцию -d и задайте разделитель вручную. В примере ниже мы использовали в качестве разделителя ":":

$ paste .cvsrc .cvsrc.new 
.cvsrc  .cvsrc.new
$ paste -d : .cvsrc .cvsrc.new 
.cvsrc:.cvsrc.new

Если вы хотите пронумеровать строки, используйте nl(1)

$ paste -d : .cvsrc .cvsrc.new / nl
     1  .cvsrc:.cvsrc.new

Если же вам нужны продвинутые возможности по программированию, можно использовать, например, awk. Одним из примеров области применения paste может быть работа с конфигурационными файлами, если менеджер пакетов устанавливает их новые версии одновременно с исполняемыми файлами. Но теперь, когда мы изучили основы, можно приступить к опциям paste.

2.1. Опции paste

  • --help - стандартная для утилит Linux опция, не нуждается в пояснениях
  • --version - тоже стандарт
  • -d, --delimiters=... - сменить разделитель TAB на другой (список)
  • -s, --serial - вместо того, чтобы выводить строки из файлов рядом друг с другом, они выводятся последовательно.
  • Если не указано имя файла или вместо него стоит '-', используется stdin.

    Ссылки по теме


     Распечатать »
     Правила публикации »
      Написать редактору 
     Рекомендовать » Дата публикации: 15.11.2012 
     

    Магазин программного обеспечения   WWW.ITSHOP.RU
    Radmin 3.x - Стандартная лицензия 1 компьютер
    ARCHICAD 21, локальная лицензия на 12 месяцев
    IBM Domino Enterprise Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
    Zend Guard 1 Year Subscription
    SAP® Crystal Presentation Design 2016 WIN INTL NUL
     
    Другие предложения...
     
    Курсы обучения   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Магазин сертификационных экзаменов   WWW.ITSHOP.RU
     
    Другие предложения...
     
    3D Принтеры | 3D Печать   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Новости по теме
     
    Рассылки Subscribe.ru
    Информационные технологии: CASE, RAD, ERP, OLAP
    Новости ITShop.ru - ПО, книги, документация, курсы обучения
    Программирование на Microsoft Access
    OS Linux для начинающих. Новости + статьи + обзоры + ссылки
    Реестр Windows. Секреты работы на компьютере
    Один день системного администратора
    Работа в Windows и новости компании Microsoft
     
    Статьи по теме
     
    Новинки каталога Download
     
    Исходники
     
    Документация
     
     



        
    rambler's top100 Rambler's Top100