Man

chmod a+xchmod +x 有什麼區別?

  • June 23, 2021

發現一篇文章說用於chmod a+x向文件添加執行權限。它和 有什麼區別chmod +x?(有沒有一種簡單的方法來搜尋手冊頁中的這些差異?“a”太小而無法有意義地搜尋手冊頁,並且通篇閱讀它們會花費太長時間)。

來自man chmod

A combination of the letters ugoa controls which users' access to the
file will be changed: the user who owns it (u), other users in the
file's group (g), other users not in the file's group (o), or all users
(a).  If none of these are given, the effect is as if (a) were given,
but bits that are set in the umask are not affected.

假設你有適當的權限,

  • a+x將設置x文件的所有位。
  • +x 將設置x文件中不存在於 umask 中的所有位。

例子:

$ umask
0022       # The group and other write bits are set

$ ls -l
---------- file

$ chmod +x file; ls -l
---x--x--x file

$ chmod +w file; ls -l
--wx--x--x file

$ chmod a+w file; ls -l
--wx-wx-wx file

在聯機幫助頁中搜尋

有沒有一種簡單的方法可以在手冊頁中搜尋這些差異?“a”太小了。

關鍵字通常在聯機幫助頁中突出顯示,a連結手冊中的相關 s 也是如此。/\<a\>另一種方法是通過在 Less 尋呼機中輸入(或\ba\b,取決於正則表達式庫)來使用帶有單詞邊界的搜尋。這匹配exact words a,所以它不匹配,但在這種特殊情況下alone它肯定會擷取所有不定冠詞。a我們還沒有語法意識的 Less。

(FelixJN) 有沒有辦法匹配粗體/突出顯示的格式?

如果 Less 是您的尋呼機,請輸入-U。它啟用控製字元顯示。粗體(或彩色,取決於您的設置)單詞中的每個字母都退格並重複以突出顯示(斜體請參見下面的參考),因此突出顯示的ugo將被寫為

u^Hug^Hgo^Ho

因此搜尋 /u^Hug^Hgo^Ho匹配任何突出顯示的ugo。但是那些^H必須輸入 Ctrl-V``Ctrl-H,相當一個障礙。

(FelixJN)man chmod | cat -A沒有顯示任何內容。

man檢測輸出是否為終端,如果不是,則丟棄格式。用於MAN_KEEP_FORMATTING=y man chmod強制格式化。您可以將其通過管道傳輸到您的編輯器,以便搜尋更舒適。例如,在 Vim 中,

MAN_KEEP_FORMATTING=y man chmod | vim -
/u\bug\bgo\bo

進一步閱讀:

引用自:https://unix.stackexchange.com/questions/639438