命令行中常見命令用法及 explainshell.com 的用法

常見命令用法

ls

ls 爲 列出有關文件的信息,有如下常見用法:
ls [OPTION]... [FILE]...html

  • -a, --all 不要忽略以.開頭的目錄
  • -l 用列表來表示

cat

cat 爲 將文件內容鏈接到標準輸出,有如下常見用法:
cat [OPTION]... [FILE]... 若是沒有FILE,或者FILE是 - ,則讀取標準輸入。mongodb

  • -A, --show-all 所有顯示
  • -b, --number-nonblank 標記非空行
  • -n, --number 標記全部行
  • -E, --show-ends 在每行行末顯示$
  • -s, --squeeze-blank 抑制重複的空輸出行

mv

mv 爲 將文件重命名或者移動至某目錄,有如下常見用法:
mv [OPTION]... [OLDNAME]...[NEWNAME]
mv [OPTION]... [SOURCE]... [DIRECTORY]
shell

  • -f, --force 在覆蓋以前不提示

touch

touch 爲 將每一個文件的訪問和修改時間更新爲當前時間或者建立一個文件,有如下常見用法:
touch [OPTION]... FILE...後端

  • -a 僅更改訪問時間
  • -m 僅更改修改時間

explainshell.com 的使用方法

explainhell是一個工具(帶有Web界面),可以解析手冊頁,提取選項並經過將每一個參數與手冊頁中的相關幫助文本相匹配來解釋給定的命令行。
bash

explainhell由如下組件構建:工具

  • 將給定手冊頁從原始格式轉換爲html(manpage.py)的手冊頁閱讀器
  • 分類器遍歷手冊頁中的每一個段落並將其分類爲包含選項(algo / classifier.py)
  • 一個選項提取器,用於掃描已分類的段落並查找選項(options.py)
  • 存儲後端,將已處理的手冊頁保存到mongodb(store.py)
  • 遍歷命令的AST(由bashlex解析)並在上下文中將每一個節點與相關幫助文本(matcher.py)匹配的匹配器

在查詢解釋時,它:
命令行

  • 將查詢解析爲AST
  • 訪問AST中的有趣節點,例如:
    • 命令節點 - 這些節點表明一個簡單的命令
    • shell相關節點 - 這些節點表明shell解釋的內容,例如'|','&&'
  • 對於每一個命令節點,咱們檢查是否知道如何解釋當前程序,而後檢查其他的令牌,嘗試將每一個令牌與已知選項列表進行匹配
  • 返回使用Flask呈現的匹配列表
相關文章
相關標籤/搜索