Что выбрать – команды BSD или Unix, если они доступны?

Команды вроде ps поставляются с множеством параметров, особенно потому, что они дают возможность выбирать между флажками стиля Unix и BSD. Надеюсь, ты получишь мою мысль.

Итак, когда есть такой вариант, который я должен выбрать для максимальной совместимости во всех Linux-системах? (максимальная совместимость является одним из приоритетов, например)

Я знаю, что стиль Unix довольно очевиден, но по некоторым причинам команды BSD содержат более читаемую информацию (например, заголовки столбцов, колонка CPU и т. Д.). Конечно, пожалуйста, поправьте меня, если я ошибаюсь, но это то, что я чувствовал.

2 Solutions collect form web for “Что выбрать – команды BSD или Unix, если они доступны?”

Практически все Linux используют GNU-версии исходных основных команд Unix, таких как ps , которые, как вы уже отмечали, поддерживают как опции BSD, так и AT & T.

Поскольку ваша заявленная цель – это только совместимость между Linux, это означает, что ответ: «Это не имеет значения».

Вложенные и другие очень маленькие варианты Linux обычно используют BusyBox вместо инструментов GNU, но в случае ps это действительно не влияет на ответ, так как версия BusyBox настолько урезана, что ее нельзя назвать ни AT & Tish, ни BSDish.

Со временем другие системы Unixy уменьшили различия в совместимости с ps . Mac OS X – которая опосредованно выводится из BSD Unix и в целом ведет себя наиболее похоже на BSD Unix – принимает флаги AT & Tish и BSDish ps .

Solaris / OpenIndiana ведет себя так же, хотя это менее удивительно, потому что в нем есть смешанная история BSD и AT & T.

FreeBSD, OpenBSD и NetBSD по-прежнему относятся исключительно к стилю BSD.

Чем старше ящик Unix, тем больше вероятность, что он принимает только один стиль флагов. Вы можете обрабатывать различия на таком поле так же, как и сейчас: установите инструменты GNU, если они еще не установлены.

Тем не менее, все еще есть ловушки. ps вообще не следует разбирать в сценариях, которые должны быть переносимыми, например, поскольку системы Unixy различаются в том, какие столбцы доступны, объем данных, которые ОС готова сделать видимыми для пользователей, не являющихся root, и т. д.

(Кстати, обратите внимание, что это «BSD vs. AT & T», а не «BSD vs. Unix». BSD Unix по-прежнему UNIX®. BSD Unix имеет прямую историю развития с оригинальной ветвью AT & T. : AT & T и ее преемники принесли инновации BSD домой на несколько точек в своей истории. Это объединение со временем частично связано с усилиями The Open Group и ее предшественников.)

В случае сомнений используйте синтаксис SysV. Это было согласовано многими людьми и является де-факто стандартом. Материал BSD либо датируется предысторией, либо является частью некоторой расходящейся ветви (SysV был попыткой прекратить войны Unix, объединив все разрозненные линии под одной крышей).

  • Получить время начала процесса независимо от обновлений NTP
  • Проверьте процесс и убейте
  • Пока цикл проверки активных процессов не выполняется
  • Почему apache2 обнаруживает несуществующий список процессов?
  • Список услуг с номерами портов
  • Отформатируйте вывод cputime для ps
  • Смутно о значении формата Unix vs. BSD для команды «ps»
  • несуществующий процесс - всегда ли это детский процесс?
  • Могу ли я получить WCHAN от ps на Mac OS X 10.7.4?
  • Захват полной структуры процесса / стека
  • Создание сценария автоматического запуска бездействия
  • Interesting Posts

    виртуальный сетевой интерфейс для клиента ShrewSoft VPN

    Почему моя пропускная способность UDP значительно ниже, чем пропускная способность TCP в iperf

    Есть ли разница между u и c в mknod

    Как я могу перевести эти инструкции по настройке клиента OpenVPN для работы с Fedora 20?

    Linux Mint – беспроводная проблема TP-LINK

    Какой язык программирования лучше всего начинать с новичка?

    Команда Posix, которая перемещает курсор в определенную позицию в окне терминала

    Автоматизировать команду modprobe во время загрузки на Fedora

    Как суммировать значения столбцов для каждой строки в двух файлах csv с помощью сценария bash?

    Индивидуальные рабочие письма и подписи с каждой фирмой, возможно, с Mutt и Procmail для просмотра Professional?

    Использование `nohup` для импорта дампа MySQL на сервере Debian

    Как настроить IP-адрес автоматически в Arch Linux?

    Реальный режим и загрузка ядра Linux запутывают

    Завершите мой (резервный) жесткий диск в Linux, когда я его не использую

    Escape shell arg из одного сценария в другой

    Linux и Unix - лучшая ОС в мире.