此篇主要是紀錄 Coursera 平台上的課程 Google IT Support Professional Certificate 中 Operating Systems and You: Becoming a Power User 的第一個星期的上課筆記,大致上是一些作業系統基礎概念和指令的介紹。其他的預期要寫的筆記也一併附上,未來整理好之後下方文字可以直接連結到該筆記:
- Navigating the System (本篇)
- Users and Permissions
- Package and Software Management
- Process Management
- Operating Systems in Practice
目錄
Basic Commands
查看說明
Windows:Get-Help [指令]
Get-Help [指令] -Full
:如果想看更細節的,可以加上參數 Full
。
Linux:man [指令]
: man
是 manual page,可以閱讀線上手冊查看該指令的用法。例如 man ls
。
:也是察看指令說明。[指令]
--help
取得當前資料夾與檔案名稱 (Windows)
ls
:取得當前資料夾與檔案名稱。ls -l
:取得當前資料夾與檔案名稱,並列出檔案名、類型、權限等等內容。ls -Force
:將會顯示隱藏文件或系統文件,這些檔案單純用 ls
不會出現。
取得當前資料夾與檔案名稱 (Linux)
根目錄是 Linux 系統的主要目錄,我們會使用斜線(slash)/
表示。
ls
:取得當前資料夾內檔案名稱。ls -l
:取得當前資料夾內檔案名稱,並列出檔案名、類型、權限等等內容。ls -la
:等於 ls -l -a
,只是把他們寫在一起。顯示隱藏文件或系統文件。
更換路徑(Windows、Linux)
pwd
:print working directory,顯示目前的所在位置。cd
:change directory,更換工作路徑。cd ~
:移至目前用戶的主目錄。cd ..
:移至上一層。
相對路徑:是以目前所在位置為參考,而建立出的目錄路徑。例如 ..
代表目前目錄的上一層。
絕對路徑:檔案或資料夾的確切位置。
建立資料夾(Windows、Linux)
mkdir
:make directory,新建資料夾。
若建立 alex yang
資料夾有空白字元,則需要用其他方式包住:
Windows: mkdir alex` yang
或是 mkdir 'alex yang'
Linux: mkdir alex\ yang
或是 mkdir 'alex yang'
指令歷史紀錄(Windows、Linux)
history
:列出所有使用過的指令。ctrl + R
:直接搜尋指令的歷史紀錄。
複製檔案和資料夾(Windows、Linux)
cp [檔案] [目的地]
:複製檔案到指定的目錄中。
ex: cp "test.txt" C:\\Users\\alex\\Desktop\\
cp *.jpg C:\\Users\\alex\\Desktop\\
複製檔案類型為 .jpg
至指定資料夾。
Windows 複製整個資料夾內容:cp "Dog Pictures" C:\\Users\\alex\\Desktop\\ -Recurse -Verbose
-Recurse
參數將會列出目錄內的內容,如果有子目錄的話他會遞迴一併處理。而 copy 使用時 CLI 不會出現任何內容,我們需要 -Verbose
輸出目前發生的情況。
Linux 複製整個資料夾內容:cp -r "Dog Pictures" C:\\Users\\alex\\Desktop\\
移動檔案和資料夾(Windows、Linux)
mv [檔案] [目的地]
:move files (directories),移動檔案到目指定目錄內容。
刪除檔案和資料夾(Windows、Linux)
rm
:remove,刪除指定檔案。rm [檔案] -Force
:強制刪除(必須謹慎使用)。
Windows 刪除整個資料夾內容:rm [路徑] -Recurse
:刪除資料夾和資料夾底下所有檔案。
Linux 刪除整個資料夾內容:rm -r [路徑]
:刪除資料夾和資料夾底下所有檔案。
一些延伸閱讀
File and Text Manipulation
顯示檔案內容(Windows)
cat
:顯示檔案內容。more
:顯示檔案內容,一頁一頁顯示方便閱讀。看完檔案後按 q
離開。cat file.txt -Head 10
:顯示前 10 列檔案內容。cat file.txt -Tail 10
:顯示尾端 10 列檔案內容。
顯示檔案內容(Linux)
cat
:顯示檔案內容。less
:剛好和 Windows 相反,一頁一頁顯示方便閱讀。看完檔案後按 q
離開。(老師提到 less is more…?!)/[word]
:在文件內搜尋,例如 /the
,會搜尋文件中有 the
的部份並且標示。head file.txt
:顯示前 10 列檔案內容。tail file.txt
:顯示尾端 10 列檔案內容。
變更檔案內容(Windows)
在 Windows 上使用 Notepad++ 變更檔案內容。
start notepad++ file.txt
變更檔案內容(Linux)
在 Linux 上使用 Nano 變更檔案內容。(也有 Vim 和 Emacs 等編輯器可選擇)
nano file
Windows Powershell
Get-Alias [指令]
:查看實際執行的 PowerShell 指令是什麼(或是別名)。
例如使用 Get-Alias ls
會看到 ls
和 Get-ChildItem
實際上是一樣的意思。
在檔案內搜尋(Windows)
Select-String [字串] [檔案]
:搜尋檔案內相符字串。
例如 Select-String hahaha file.txt
將會顯示有 hahaha
字串的部分。
甚至可以使用 Select-String hahaha *.txt
去搜尋所有 .txt
檔有相符字串。
在資料夾內搜尋(Linux)
ls [路徑] -Recurse -Filter [檔案]
:搜尋資料夾內相符合檔案。
例如 ls 'D:\Program Files' -Recurse -Filter *.exe
將會顯示所有在該資料夾內的 .exe
檔。
在檔案內搜尋(Linux)
grep [字串] [檔案]
:搜尋檔案內相符字串。
Windows: Input, Output, and the Pipeline
echo blabla > file.txt
:將 blabla
字串寫入 file.txt
。
cat file.txt | Select-String bbb
:查看 file.txt
內容並且搜尋有 bbb
字串的內容。
cat file.txt | Select-String bbb > otherfile.txt
:功用和上方指令一樣,並且把搜尋到的相符合內容寫進 otherfile.txt
內。
rm file.txt 2> errors.txt
:錯誤訊息寫進去 error.txt
內。
rm file.txt 2> $null
:啥都沒有,啥都不要輸出。
1: stdout – the output
2: stderr – the error
Linux: Input, Output and Pipeline
和 Windows 差不多。
echo blabla >> file.txt
:追加 blabla
到檔案尾端。
cat < file.txt
。
ls -la /etc | grep bluetooth