shell programming暨Linux(指令)筆記

學習資源

Linux

檔案權限
owner group other

  • other指不在群組中的

資料夾的大小不包括在裡面的東西

Linux指令

echo
ls 顯示當前資料夾內容。ls為list的縮寫
-l l為long的縮寫
cd 為change directory的縮寫
mkdir making directory
mv move的縮寫
rm remove
rmdir remove directory
pwd 為print working directory
.. 親目錄
. 當前目錄
~ 家目錄
jobs:列出在背景中的程式
date 顯示日期時間
date -I'ns' 以ISO 8601格式顯示日期時間,精確度至奈秒
cat catenate, concatenate

less
/ 搜尋
f: forward
b: back
也可用方向鍵
q quit

curl: c url → see url
-L follow redirects
-o 檔名

grep keyword file

wc word count

alias 列出
alias shortName='very very long name' 設定以shortName表示very very long name

建立捷徑

ln -s /original/very/very/very/long/path/name /new/short/pathName

terminal

Ctrl + c:強制關閉
Ctrl + d:強制關閉正在執行的程式
Ctrl + l:洗螢幕
Ctrl + f:往下,f for forward
Ctrl + b:往上,b for back
Ctrl + z:把程式丟到背景

.bashrc generator

directory

cd -:回前一個目錄
pwd:顯示當前目錄
rmdir:刪除沒有檔案的資料夾
rm -r 資料夾:砍掉資料夾下的所有檔案

hash

md5

取得檔案的md5

md5sum file

取得某字串的md5

echo -n "some str" | md5sum

sha

sha1sum file
sha256sum file
sha512sum file

壓縮、解壓縮

zip

打包多個檔案

zip zipFilename.zip file1 file2 ...

打包資料夾

zip -r zipFilename.zip directoryName

tar.gz

解壓縮

tar zxvf FileName.tar.gz

Ubuntu

以root的身份開視窗

sudo nautilus

查Ubuntu套件的支援期限

ubuntu-support-status

連學校VPN

Shell Script

註解

# comment here

變數

shell variableenviroment variable二種

shell variable

變數宣告及使用

var_name=var_value
echo $var_name
echo "the value of the variable var_name is $var_name"

enviroment variable

$PATH 告訴系統應用程式所在的位置,$PATH中的每個路徑用:分別
$LOGNAME 目前登入者的使用者名稱

參數

$0:script本身的名稱(含副檔名)
$#:#為數字,表第#個參數。例如:$1為第一個參數