為什麼 chfn 不允許非 ASCII 字元或等號?

為什麼 chfn 不允許非 ASCII 字元或等號?

我想知道設計 chfn 命令來警告人們不要使用非 ASCII 符號的歷史目的是什麼(以及為什麼只對電話號碼強制執行它?)這是否仍然適用於所有 UNIX 系統,只有一些,或者這只是歷史?

另外,Debian 上的 chfn 手冊頁說等號和逗號只能放在最後一個欄位。逗號部分是有意義的,因為它用於分隔字段,但是等號有一些類似的用途嗎?再說一次,我不知道這是特定版本的、歷史的還是通用的。

答案1

該命令(具有不同的限制)在不同的平台上提供。根據HPUX 的手冊頁,該命令起源於 BSD(並且有一個SunOS4 手冊頁對於它 - Solaris 沒有)。

AIX 文件顯示限制,但比較useraddchfn手冊頁,指的是使用者名稱而不是全名

同樣的限制也存在於最舊的版本您可能會在某些 Linux 變體中使用它。根據版權日期,可能從 1994 年開始(RCS 標識符1999 年 7 月說)。以下是對作者的評論:

  • 神奇來源:影子組曲
  • 茱麗安·法蘭西斯·豪(存檔網頁)

    我於 1989 年 5 月作為承包商來到 IBM/Austin 工作,從事 AIX v3.1 的軟體安全工作。 1989 年至 1995 年間,我參與了許多 IBM 作業系統的開發工作,包括 AIX PS/2、AIX S/370 和 OS/400 V2R3。相當格格的路徑。我最終接受了 IBM 的全職職位,並於 1995 年 6 月離開了 AIX 變更團隊。最終我轉到檔案系統開發小組並在那裡工作,直到 1996 年 10 月完成我的開發任務。

  • chfn - 更改使用者名稱和訊息

結論是,作者在 AIX 上的工作對其設計產生了一些影響。

現在 - 為什麼 AIX 這樣做很難說,但可能會使腳本編寫更簡單(並且因為人們沒有充分的理由在他們的等號中使用等號)全名,任何超過使用者名稱會)。

相關內容