1. 程式人生 > 其它 >Linux與Shell程式設計複習筆記

Linux與Shell程式設計複習筆記

Linux

Linux檔案和目錄結構

  • / 根目錄
  • /etc 供系統維護管理用的命令和配置檔案
  • /tmp 存放臨時檔案
  • /boot 存放系統引導檔案
  • /bin 系統常用命令,如ls, ln, cp, cat等
  • /home 使用者目錄
  • /root 超級管理員目錄
  • /dev 存放裝置檔案
  • /usr
    • /usr/include C語言標頭檔案存放目錄
    • /usr/tmp 存放臨時檔案
    • /usr/bin 存放常用命令,如echo, grep, kill
    • /lib,/usr/lib 存放各種庫檔案,指C語言的連結庫檔案,以及terminfo終端庫等等

檔案萬用字元和檔案型別

  • * 可執行普通檔案
  • / 目錄
  • @ 符號連結
  • | FIFOs
  • = 套接字
  • - 普通檔案
  • p 目錄檔案
  • b/c 裝置檔案
  • l 連結檔案
  • p 管道檔案

Command

cat

  • -n 編號
  • -b 空白行不編號
  • -s 壓縮連續空行

ls

  • -a 全部資訊
  • -l 長資訊
  • -F 附加檔案型別

more

  • -d 提示
  • -f 計算實際顯示行數
  • -s 合併顯示空行
  • +/pattern 搜尋字串並在此之後開始顯示
  • -num 每行顯示的行數
  • +num 從num行開始顯示

  • space/n 下一屏
  • b 上一屏
  • enter 下一行
  • /pattern 搜尋

less

  • -a 最後一頁
  • -m 百分比
  • -M 百分比 行號 總行數
  • -N 行號
  • -p test 搜尋test
  • -s 合併顯示空行
  • -num

tail

  • -num

cp

  • -a = cp -drp
  • -d 保留檔案連結
  • -f 強制執行
  • -i 互動提醒
  • -p 更新修改日期與訪問許可權
  • -r 遞迴複製檔案樹
  • -v 視覺化操作
  • -l 不復制而只產生硬連結
  • -s 不復制而只產生軟連結

mv

  • mv -i 互動提醒
  • -f 強制執行

rm

  • -r 遞迴刪除資料夾
  • -f 強制執行
  • -i 互動提醒

sort

  • -m 合併排序
  • -n 以數值形式排序
  • -d 字典序(default)
  • -r 逆序
  • -t 'char' 選定分割字元
  • -u 保留唯一鍵值(去重)
  • -k 選定排序鍵值(1.1,2/1.1,1.1)
  • -o 輸出到檔案
  • 多指令可合併執行

diff

  • -b 忽略空格
  • -c 上下文格式顯示
  • -C num 顯示num行上下文

  • <為刪除
  • >為新增

touch

mkdir

  • -p 幫助確保目錄全部存在,如果不存在就新建

rmdir

tar

  • -c 打包
  • -x 解包
  • -v 視覺化
  • -f 不互動
  • -z 對檔案進行壓縮
  • -czvf 壓縮
  • -tzvf 列出壓縮內容
  • -xzvf 解壓

ln

  • ln 硬連結
  • -s 軟連結