Перевод флагов GNU ps в стандартные флаги

Я использую oh-my-zsh и его ssh-agent плагин на OSX, но в последнее время кто-то вверх по течению решил использовать ps x . Я не совсем уверен, что это даже делает, поскольку я не использовал GNU userland в чем-то близком к десятилетию. Кажется, что цель состоит в том, чтобы выяснить, запущен ли ssh-agent , поэтому я не уверен, почему нужны какие-либо флаги для ps . Может ли кто-нибудь помочь мне приготовить альтернативу с кросс-платформой?

ОБНОВЛЕНИЕ: Если вы хотите взглянуть на себя, вот источник для плагина ssh-agent

One Solution collect form web for “Перевод флагов GNU ps в стандартные флаги”

В Linux основной эффект ps x состоит в том, чтобы включить все процессы, выполняемые как один и тот же пользователь. По умолчанию ps включает только процессы, запущенные на одном терминале. Напротив, BSD по умолчанию включает в себя процессы, имеющие управляющий терминал, независимо от того, является ли он одним и тем же или нет. Соответствующая опция BSD – -x . Кроме того, ps x выбирает несколько другой формат вывода. Синтаксис POSIX для соответствия тем же самым процессам

 ps -A -u "$USER" 

Если вы разбираете вывод ps , обязательно используйте флаг -o для управления тем, какие столбцы печатаются. Обратите внимание, что команды в моем ответе не печатают точно одинаковые столбцы.

Чтобы искать процесс ssh-agent, вам необходимо передать некоторые параметры, поскольку как Linux, так и BSD скрывают процессы, которые по умолчанию не связаны с каким-либо терминалом, и обычно для ssh-агента не связано с терминалом.

 if [ -z "$SSH_AGENT_PID" ]; then SSH_AGENT_PID=$(ps -A -u "$USER" -o comm= | grep ssh-agent | head -n 1) fi if [ -n "$SSH_AGENT_PID" ]; then … 
  • Зачем оценивать вывод ssh-agent?
  • ssh-agent на CentOS 6.5 сохраняет «отключить» себя
  • Использование lftp с ssh-agent
  • Агент SSH не работает с частным ключом pkcs8
  • Выполнение 'ssh-add -D' из задания cron не работает
  • Использовать git pull через команду ssh invoke
  • Случайно исказил кучу имен файлов в / tmp ... ssh-ключи, запрашивающие пароли
  • Идентифицировать открытый ключ SSH на сеансе оболочки удаленного конца (без агента или без идентификаторов в агенте)
  • xautolock / ssh-add не может взаимодействовать с ssh-agent при запуске из .xsessionrc
  • Как остановить использование ssh-agent?
  • можно ли запускать `ssh-add <key>` только тогда, когда я ssh в поле? (от Cygwin)
  • Как использовать ssh-agent с несколькими (действительными) ключами и все же выбрать, какой из них использовать?
  • Interesting Posts

    Конвертировать постоянную файловую систему Debian Live USB в автономную установку

    Почему у меня есть другой отпечаток RSA при работе с несколькими приложениями с помощью ProxyCommand

    Bash – PS1 не обновляется с правильным именем хоста после изменения имени хоста в скрипте

    Помогите мне отменить операцию копирования?

    Как восстановить разбитый RAID-массив Linux md RAID5?

    Не удается установить драйвер в Arch

    localhost vs hostname

    Связь между системными вызовами и командами оболочки / утилитами

    Определяет ли чипсет, поддерживает ли Wi-Fi-карту в Linux?

    Linux отключает / скрывает устройства mtdblock от lsblk

    Задайте исполняемую кучу

    Поймать / диагностировать процесс уничтожения пользователя – Необязательно выходить из системы автоматически

    (Как) я могу отобразить rtf в командной строке?

    "Dyld: библиотека не загружена: /usr/local/lib/libcurl.4.dylib" при выполнении завитка с непривилегированным пользователем

    не может найти файлы кактусов в / srv / www / cacti

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