このps
コマンドは、次の 2 つの形式のフラグを取ることができます。
- フラグの前にダッシュを付ける Unix 形式。
- フラグの前にダッシュを付けない BSD 形式。
私はざっと目を通したマニュアルページps
どのフラグが Unix フラグ形式用で、どのフラグが BSD フラグ形式用かを確認するコマンドを探しましたが、何も見つかりませんでした。
編集:これは重複ではありません。他の質問では、Unix フラグ形式と BSD フラグ形式のフラグが異なるかどうかを尋ねていますが、この質問では、Unix フラグ形式のフラグと BSD フラグ形式のフラグは何かを尋ねています。
答え1
のマニュアルページオプションをスタイル別にグループ化するのではなく、機能別にグループ化します。オプションの表示方法を見ると、スタイルを区別できます。
- BSD オプションは先頭にダッシュなしでリストされます ( 、、、、
a
... ) 。g
T
r
x
- POSIX オプションは、先頭に単一のダッシュ (、、、、...) を付けてリストさ
-A
れます。-a
-d
-e
-N
- GNU の長いオプションは、先頭に 2 つのダッシュ (
--deselect
...) が付いてリストされます。
Kusalananda が示唆しているように、POSIX オプションだけを使用し、他の人の の使用方法を理解する必要がある場合にのみ他のオプションを参照するのが良いでしょうps
。
答え2
POSIX標準ps
ユーティリティを説明する概要は次のとおりです。
ps [-aA] [-defl] [-g grouplist] [-G grouplist]
[-n namelist] [-o format]... [-p proclist] [-t termlist]
[-u userlist] [-U userlist]
の「UNIX オプション」と「BSD オプション」については明らかに混乱がありps
、OpenBSD、NetBSD、FreeBSD、macOS のいずれも のマニュアルに「BSD オプション」(ダッシュのないフラグ) を記載していないためps
、これらについては忘れて、UNIX の歴史の閉じた章の一部として見たほうがよいのではないでしょうか。
の POSIX の Rationale セクションでは、ps
の実装に関して System V ベースの Unix と BSD ベースの Unix の間に非互換性があることps
(およびフラグをそのように標準化した理由) は述べられていますが、ダッシュのないフラグについては一切触れられていません。
参考のために:
答え3
PS は 3 種類の使用構文スタイルをサポートしています。
- UNIXスタイル。グループ化することができ、先頭にダッシュを付ける必要があります。例:
ps -aux
- BSDスタイル。グループ化できますが、ダッシュと一緒に使用することはできません。例:
ps aux
- GNUの長いオプションは、先頭に2つのダッシュが付きます。例:
ps --aux