課程內容#
vim 基本使用#
- 快速跳轉
- 行首:0 [^ 有效行首]
- 行末:$
- 文件開始:gg
- 文件末尾:G
- 任意行:12G—— 跳轉到 12 行
- 複製
- 拷貝
- 剪切
- 多行操作
- 刪除
- x:刪除一個字符
- d
- 2dd:從當前行刪除 2 行
- d2G:刪除第 2 行到當前行
Linux 歷史#
- C 語言:怎麼來的?和系統結合的緊密性?
- Linux 本質 [Linux 通常指的是 Linux 內核、Linux 操作系統]
- Linux 和 Windows 的不同 [Linux 早期對使用者的態度:會的都說好,不會的你隨意]
- Unix [MacOS;谷歌提出了雲計算後,Unix 系統的廠家基本只剩蘋果了]
Shell#
- zsh
- 相關文件
- 環境變量的概念:存在 shell 進程中
- 執行命令的本質:大部分是執行文件,開一個子進程 [保證命令間不干擾],運行完子進程結束,返回結果
- man
- 簡約版:tldr
- 英語語感
- 檢索:前後移動 ——N/n
- C 語言底層庫函數
- 搜索引擎 [Google 英語搜索]:提升自己的信息處理能力
- 命令怎麼查找
- tab [zsh 提供]
- man -k [-f:基於明確的單詞搜索]
- apt search [apt-cache search]
Linux 具體使用#
- 文件及目錄
- 遠程拷貝
- scp [基於 ssh-> 基於 tcp]
- sshfs [基於 ssh、遠程文件系統]:可以將遠程服務器的目錄掛載到本地
- 可應用於嵌入式開發過程
- 文件查閱
- cat
- head
- tail
- -f:可查看動態更新的文件,一直讀文件末尾,用來監控日誌 [會阻塞]
- more
- less [比 more 更友好]
- 可回看
- 檢索時高亮顯示
- 移動、複製
- cp、mv
- ln
- 硬連接
- 軟連接:刪除軟連接時一定要小心,名字後別多加 / [會進入到目錄]
- [PS] Python 結束對 2 的支持;Python 的版本切換只需更改軟連接即可
- rm:可封裝成 mv + 定時清理
- 文件類型及權限
- 7 種
- 普通文件
- 目錄:大小一般為 4K,夠用
- 字符:基於網絡、串口 --> 鍵盤、鼠標
- 塊:block,存儲設備
- 管道 [更多的情況是父進程生兩個孩子,中間建立管道]
- 連接
- socket
- 權限
- rwx
- x 對於目錄表示可進入
- 用戶分組:u、g、o
- 命令
- chmod、chgrp、chown
- usermod:針對用戶
- 特殊權限
- set uid:擁有尚方寶劍的人就有權利
- set gid:到了某個地方就有特定的身份
- sbit:黏著位,只有文件所屬者有刪除權限
- 隱藏屬性
- rwx
- 7 種
- 文件時間
- atime [訪問]:更新過於頻繁不好,可以通過設置隱藏屬性不更新
- ctime [修改權限]
- mtime [修改內容]:ls 默認顯示的
- touch
- 站得越高,越需要考慮磁碟的壽命 [損耗、電費]
- 文件定位
- 特殊文件的定位
- which
- whereis
- 普通文件
- locate:基於數據庫 db,即時需要 updatedb [使用場景少]
- find
- 特殊文件的定位
- 遠程拷貝
- 數據處理[適於將來工作]
- cut、tr、sort、uniq、grep、head、tail
- 重定向:>、>>、<
- read:讀入數據 [注意輸入數據的格式]
- 進程管理
- ctrl + z
- fg
- bg
- jobs
- crontab -e/-l [應該會,會看任務的格式]*
- 系統信息的獲取[試試即可]
- uname、top、free、dstat、htop、nmon、uptime
Shell 編程#
- 變量
- 命令替換符:``
- 特殊變量:$0、$#、$?、$@、$*
- ❗ = 兩邊沒有空格
- 輸入輸出
- read
- echo
- printf
- 分支
- test 表達式
- man test
- 整數判斷:整數計算 $[] (還有 expr、let,能記住一個即可)
- 字符串:== 🆒
- if:[[ ]] 🆒
- case
- test 表達式
- 循環
- for
- for i in `seq 1 100` --> seq 需被系統不停地調用
- for ((i=1; i<=100; i++)) 🆒效率更高
- while [一般用 while 1]
- until [一般不用]
- for
- 函數 [簡單程序一般不需要]
- 數組⭐
- 數組的初始化 [可有可無;沒初始化就為空;初始化耗時]
- unset
- 遍歷
- $ 變量
Tips#
- 考試包含全英文題
附:思維導圖#
【宿船長出品】