Regular-Expression
所有空格在 man 中都匹配
在帶有 Bash 4.4.20(1) 的 WSL-Ubuntu 18.04 中
man
,less
我在man grep
命令內部執行,-o,|
旨在將 -o 與逗號或後面的空格匹配。但是,文件中的所有空格都匹配了,為什麼會這樣?我怎麼能只匹配 -o 和逗號或後面的空格?
作為正則表達式,
"-o,| "
匹配"-o,"
或" "
。使用
-o(,| )
or-o[, ]
匹配 on-o
後跟,
or 或空格。或者-o\>
對於-o
後面沒有單詞字元的 a (單詞字元是下劃線或在語言環境中歸類為 alnum 的字元)。而不是使用
man
,你可以使用info
。info
手冊,尤其是 GNU 軟體的手冊(例如grep
在 Ubuntu 上找到的實現)通常更完整,更重要的是這裡有一個可搜尋的目錄和索引。它使跳轉到文件中的特定主題變得更加容易。
例如,使用:
info -- grep -o
您將直接跳轉到該
-o
選項的說明。在 內
info
,您還可以按i
調出索引(並-o
在此處輸入Tab
完成),或I
(大寫i
)獲取給定搜尋字元串的索引條目列表。但是請注意,在某些系統上,即使是 GNU 系統(例如 Debian/Ubuntu),
info
有時也不會預設安裝格式文件。您可能需要安裝一些somesoftware-doc
軟體包來獲取格式的文件somesoftware
。info