20230613 更:新的神 — 大江狗教 Linux

# 終端機類

# 終端機自身

指令作用
clear清空螢幕
指令 > 檔案這樣就可以輸出指令內容到檔案中了
  • windows cmd, linux terminal 清空畫面指令
  • 神奇的水管,用例
某指令 | more
某指令 | grep

# 檔案操作類

參數 - p

指令作用
ls -al等同某些系統的 ll 嗎?查看檔案詳細資訊
rm 某個東西刪除 某個東西,刪資料夾可帶參數 -rf
mv 某個東西 某個位置移動 某個東西(有時也能拿來改名)
chmod 權限數字 某個東西修改某個東西的權限
mkdir創造空目錄
cp 某個東西 路徑複製東西到某處
rmdir 某個目錄目錄空白時才能刪除
  • 壓縮檔案:
tar jcvf 壓縮後檔名 壓縮前檔名
  • 不是指令但很實用 ./ 表當前目錄,使用例:
cp /我/來自/好/遠/好/遠/的/地方/啦.md ./
# 如此可以貼到當前所在位置
  • 查詢檔案:
find 目錄 -name "名稱或單純只有副檔名"
# 可以抽換 name 為其他參數,以其他條件查詢
find / -name nginx

詳細教學:

  • 參數方面 Day 15. 目錄刪除 rm 相關指令
  • 刪除目錄下所有東西 rm -i 目錄名稱/*

# 番外篇:20230722 移動目錄時顯示不為空

前情提要:我的 Django 專案目錄結構多一層,所以一直想找個機會移動檔案,目錄結構大概是這樣:

📁FirstProject
 ﹂📁FirstProject
 ﹂📁myapp
 ﹂manage.py
 ﹂db.sqlite3

結果我下

mv FirstProject ../

他總是拋出這則錯誤,似乎是同名才會引發的囧

如果覺得文中方法略麻煩,可能在最外層開個名稱不一樣的資料夾,然後下

mv FirstProject/*  ../新的資料夾

把檔案移過去之後再改資料夾名稱(喂)

# OS 操作類

Ubuntu Gnome 桌面下在終端機按 f11 可以切為全螢幕

指令作用
free看記憶體用量
wget後方加 ip 可以看連不連得到
systemctl 某個服務很神奇
sudo + 指令暫時授予 root 權限
who因為 Linux 是多使用者多工的 OS,使用這個指令你可以看到誰在線上
whoami看看自己的使用者名稱
group看自己的群組,如果在 group 後面帶人,可以看他在甚麼群組
exit登出
top看記憶體
pmap看某個進程的詳細情形,帶參數 -x 表顯示詳情
  • Linux shutdown 命令,給它一個痛快(?)
shutdown -h now # 現在馬上關 0 皿 0
  • Linux 用 ps 與 top 指令找出最耗費 CPU 與記憶體資源的程式
    • top-o 參數表用後者排序如:
top -o %CPU # 這樣就是照 CPU 排序
  • Linux 系統效能分析與探討 - [8] 了解 process 使用記憶體的狀況 - pmap

  • 類似工作管理員的功能 ps ,以下語法可以看單個處理程序相關資訊

ps -ef | grep 處理程序名稱
  • pgrep :查進程
    • kill :殺進程
      • 包含 child 討論
  • 看 port 號
netstat -na | grep LISTEN

# 硬體類

指令作用
fdisk -l查看硬碟掛載
mount 裝置名稱 掛載點掛載硬碟
umount 掛載點退出硬碟
  • 磁碟掛載與卸載

# 檢視器編輯器類

指令作用
cat看那個檔案
# cat 搭配輸出符號
  • > :取代內容
  • >> :在檔案後方 append 內容
# Vi 類
指令作用
vi打開 Vi(Vim 是加強版)
dd刪除單行
iinsert,編輯內容
esc離開目前模式
:wq存檔離開
:q!不存檔離開, ! 是強制的意思
# nano:你把我放哪;_;

優質教學:

  • Linux vi, vim 入门使用说明
  • vi 下的查詢
    • 更具體
  • 複製、貼上

20230410 更:唉,vi 很難用欸,裝 vim 吧
用下面官方這個指令會得到超大一包.................

pamac install vim
  • 看看這個網友怎麼做
    • pamac 常用參數

# Shell Script 類

指令作用
echo 變數名稱='變數內容'設置變數
$變數叫出變數內容
  • Shell 的数组表示

# 衍生類

指令作用
python叫出 Python,疑似是因為系統有依賴到
g++編譯你的 C++ 程式~

# 參數類

指令作用
-f強制,大概吧

# 觀念篇

  • 絕對路徑 vs 相對路徑
    • 練習 mv 語法時遇到的問題,導致檔案搬不成功,觀念很重要
  • (改天研究)tty3?tty2?
  • 對 Linux 來說,資料夾 YOYO 跟資料夾 yoyo 是完全不一樣的
  • 提示試讀
    • crystal@crystal-pc:~
      • 初步解讀:第一個 crystal 是使用者名稱。老鼠後面的 crystal-pc 是 host
      • 20230526 更:波浪符之謎,疑似是當前使用者預設開啟的資料夾;另外只輸入 cd ,好像可以回到這個資料夾(可以理解成切換使用者的預設降落地點🤔)
  • 預設只有 root 使用者可以開關機
  • 權限數字
    • 讀 4,寫 2,執行 1
    • 數字三位由左至右,擁有者/群組/其他人
  • 在 Linux 中,安裝的套件相關依賴會被收集到不同位置,log 則是不同套件集中生成在 var/log 的路徑

# 實際遇到的問題

# 雞婆的自動修正

zsh correct 'vim' to 'vi' nyae

誤按導致 vim 叫不出 vim

no----

  • Quick Tip: Stop ZSH Shell Auto-Correct from Driving You Crazy
    誰可以幫我關閉這個雞婆的小傢伙 QQQ
  • zsh 過分熱心地嘗試將功能更正為功能 -> 我的 OS 不生效
  • 如何部分禁用 zsh 的自動更正

# Vim 的 hjk 上下左右移動,是要你在閱讀模式的時候(嗎??!)


# 參考資料

  • 鳥哥
  • Linux systemd 系統服務管理基礎教學與範例
  • Linux 使用筆記