ssh-command-collection

SSH 常用指令篇

作為 Web Developer,常常需要通過 SSH 連接到 Linux Server 進行一些管理及操作,但 Linux 指令集博大精深,要學習全部指令並不容易。

其實我們日常操作不外乎都是使用那十多二十條的指令,筆者就歸納了一些常用的指令與大家分享。

所需軟件

Mac 用戶只需打開系統的 Terminal (終端機) 即可,另外 iTerm 2 也是很受歡迎的替代品。

Windows 用戶可以下載 Putty

通過 SSH 連接到 Linux Server(使用密碼登入)

ssh 用戶名@IP地址

ssh webmaster@xxx.xxx.xxx.xxx

通過 SSH 連接到 Linux Server(使用 PEM 登入)

ssh -i PEM檔案路徑 用戶名@IP地址

ssh -i "PEM.txt" webmaster@xxx.xxx.xxx.xxx

查看當前路徑

pwd

列出目前路徑下的所有檔案和資料夾(包括隱藏檔案)

ls -al

切換資料夾

cd 資料夾名稱或路徑

cd folderName
cd folderName/subFolderName/subSubFolderName

切換到用戶的根目錄

如果用戶名為 webmaster,用戶的根目錄就是 /home/webmaster,可這樣快捷切換

cd ~

查看目前 Server 狀態,CPU、RAM 等使用情況

top

按 Ctrl + C 關閉

查看指定資料夾容量

du -h 資料夾路徑

du -h /home/webmaster

查看 Server Harddisk 容量

df -h

切換為 root 用戶

注: 不是所有 Server 都啟用了 root 帳戶

su

切換到指定帳戶

su – 用戶名

su - webmaster

更改用戶密碼

passwd 用戶名

passwd webmaster

刪除檔案

rm 檔案名稱

rm uselessfile.txt

刪除檔案並且不提示(小心使用)

rm -f 檔案名稱,常常可使用 * 號匹配任何字詞

rm -f *.txt

刪除整個資料夾及其內容,並且不提示(小心使用)

rm -rf 資料夾名稱

rm -rf someFolder

刪除資料夾(只能刪除空的資料夾)

rmdir emptyFolder

移動檔案 / 更改名稱

mv oldName newName

mv oldName.txt newName.txt
mv ~/file.jpg ~/domains/example.com/img/here.jpg

將資料夾內的所有檔案上移一層

. 代表現在這一層

mv folder/* .

查看檔案內容

cat 檔案名稱

cat program.php

修改檔案內容

nano 檔案名稱

nano program.php

注: Ctrl + O 寫入檔案,Ctrl + X 退出編輯器

查看最後 n 行資料

tail -n 檔案名稱

tail -50 text.txt

登出

exit

Tar 打包資料夾及其所有檔案

tar -zpcv -f 檔案名稱.tar.gz 資料夾名稱

tar -zpcv -f archive.tar.gz ./folderToArchive

解壓 Tar 的打包

tar -zxvf 檔案名稱.tar.gz

tar -zxvf archive.tar.gz

更改檔案權限

chmod 權限 檔案名稱

chmod 0777 writable

更改資料夾及其所有檔案及子資料夾檔限

chmod -R 權限 資料夾名稱

chmod -R 0777 writableFolder/

傳輸單一檔案:由本台 Server 至另一台 Server

scp 檔案路徑 用戶名@Server地址:/path/of/the/file

scp sendme.txt webmaster@example.com:/home/webmaster/sendme.txt

傳輸單一檔案:由另一台 Server 至本台 Server

scp 用戶名@Server地址:/path/of/the/file 儲存路徑

scp webmaster@example.com:/home/webmaster/getme.txt ~/Downloads/getme.txt

傳輸整個資料夾:由本台 Server 至另一台 Server

scp -r 資料夾路徑 用戶名@Server地址:/path/of/the/folder

scp -r folderToCopy webmaster@example.com:/home/webmaster/folderToCopy

結語

以上這些都是筆者在日常 SSH 操作中的常用指令,都很初階,但已足夠應付日常所需。

如有任何問題歡迎留言及指教,感謝。

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *