インターネットでは、Mac OS X 10.8と言われています。Open Group UNIX® 03 標準認証そしてそれ互換性のあるシステムです。
しかし、簡単なテストを見るとecho
そうではないようです。
ㅏ) 基本仕様状態
実装するやらない方がいいすべてのオプションがサポートされます。
そして
echo ユーティリティが過去の BSD 動作に適応するように、IEEE Std 1003.1-2001/Cor 1-2002、項目 XCU/TC1/D6/21 を適用します。
雨) マンページには次の内容があります。状態
要約
エコ[-n] [文字列...]
そして
基準
echoユーティリティは、Corによって改訂されたIEEE Std 1003.1-2001(「POSIX.1」)に準拠しています。 1-2002.
氏)現実はオプションをサポートするということです。少なくともe
(user@avitus tmp)$ uname -a
Darwin avitus.local 12.3.0 Darwin Kernel Version 12.3.0: Sun Jan 6 22:37:10 PST 2013; root:xnu-2050.22.13~1/RELEASE_X86_64 x86_64
(user@avitus tmp)$ echo -e "test \tAm I SUS compliant?"
test Am I SUS compliant?
(user@avitus tmp)$ echo "test \tAm I SUS compliant?"
test \tAm I SUS compliant?
したがって、質問は次のようになります。
1. これは規制違反ですか?
2. Mac OS X 10.8は実際にSUS規格に準拠していますか?
3. 部分的な部分はありますか? echoユーティリティが過去のBSD動作に適応するようにXCU / TC1 / D6 / 21を適用します。 やるべきことはありますか?では、プロジェクトの説明はどこにありますか?これ
Austin Group仕様の技術正誤表1番 言うことはあまりありません。
4.私が何かを逃したことがありますか?
答え1
OS X 10.8もUNIX 03登録製品としてリストされています。http://www.opengroup.org/openbrand/register/。
bashを使用している場合、デフォルトではPOSIXと互換性がありません。しかし、デフォルトでは、echoはshのオプションをサポートしていません。
$ bash
$ builtin echo -e a; /bin/echo -e a
a
-e a
$ sh
$ builtin echo -e a; /bin/echo -e a
-e a
-e a
$ shopt -u xpg_echo
$ builtin echo -e a; /bin/echo -e a
a
-e a
OS Xのshはbashバージョンです。違いは次のとおりです。
- POSIXモード有効
- xpg_echoが有効になっています(echoはどのオプションもサポートしておらず、エスケープシーケンスを解釈します)。
- sh -l は .bash_profile を読みません。
- FCEDIT のデフォルト値は EDITOR または ed ではなく ed です。