這篇文章將幫助理解DevOps工程師所需的大部分重要且經常使用的Linux命令。
要執行這些命令,你可以使用任何Linux機器、虛擬機或在線Linux終端來迅速開始使用這些命令。
系統信息命令:
hostname - 顯示系統主機的名稱。
hostid - 顯示由操作系統分配的系統主機ID。
date - 以UTC格式顯示當前日期和時間。
whoami - 顯示終端當前登錄的用戶名。
uptime - 顯示自機器登錄以來經過的時間。
uname - Unix名稱。
clear - 清屏。
history - 列出到目前爲止執行的所有命令。
sudo - 超級用戶執行。
echo $? - 顯示最後一個執行的命令的退出狀態(0 - 成功,1-255 - 錯誤/失敗)。
shutdown -r now - 立即重啓機器(-r 重啓)。
printenv - 顯示Linux系統的所有環境變量。
last - 顯示Linux系統中之前的登錄信息。
目錄命令:
pwd - 顯示當前工作目錄(縮寫爲Print Working Directory)。
cd - 更改目錄。
cd .. - 更改到其父目錄,即向上一級。
cd
cd ~ 或 cd - 更改到當前登錄用戶的主目錄。
cd ../.. - 將目錄更改爲向上兩級。
cd - - 更改到上一個工作目錄。
mkdir - 創建目錄。
mkdir
mkdir -p
ls - 列出你所在的目錄的文件和文件夾。
ls -a - 列出所有文件和文件夾以及隱藏文件(-a all)。
ls -al - 以格式化的方式列出所有文件和文件夾以及隱藏文件(-l 長列表格式)。
文件命令:
touch - 創建一個空文件或更新現有文件的時間戳。
touch
touch
cat - 連接並顯示文件的內容。
cat
cat >
head
head -n 5
tail
tail -n 5
tail -F
less
rm - 刪除命令。
rm
rm -r
rm -rf
cp - 複製命令。
cp
cp -r
mv - 移動或重命名命令。
mv
mv
文件權限命令:
ls -l
ls -ld
chmod
chmod
chown
chown
chgrp
getfacl <fileName/dirName> - 顯示文件/目錄的訪問控制列表。
setfacl -m u:
setfacl -x u:
setfacl -m g:
setfacl -x g:
文件權限八進制數字:
讀(r)— 4,寫(w)— 2,執行(x)— 1
將數字相加以創建一個八進制數字,以提供文件/目錄的權限。
用戶管理命令:
useradd - 創建用戶賬戶。
useradd
useradd -m
passwd
userdel - 刪除用戶。
userdel
userdel -r
/etc/passwd - 存儲用戶賬戶的信息。
cat /etc/passwd - 顯示該機器上的所有用戶的完整列表。
/etc/shadow - 以加密格式存儲用戶的密碼。
cat /etc/shadow - 顯示該機器上所有用戶密碼的完整列表。
su - 替代用戶。
su
exit - 從該用戶註銷。
usermod - 修改用戶。
usermod -aG
chsh - 更改shell。
chsh -s /bin/bash
chsh -s /bin/sh
組管理命令:
groupadd
groupdel
/etc/group - 存儲組的信息。
cat /etc/group - 顯示該機器上的所有組的完整列表。
gpasswd
gpasswd -a
gpasswd -d
gpasswd -M
搜索命令:
locate - 根據名稱搜索文件/目錄。
sudo updatedb - 更新數據庫以確保結果是最新的。
locate <fileName/dirName> - 定位文件/目錄並顯示路徑。
GREP 命令 — 全局正則表達式打印
grep
grep -i
grep -v
grep -l
查找命令:
find . -name
find
find
硬件信息命令:
free -h - 顯示系統內存信息( -h 人類可讀格式)。
df -h - 顯示已掛載文件系統的磁盤空間使用情況。
du - 磁盤使用情況。
du -h - 顯示磁盤使用信息(-h 人類可讀格式)。
du -sh - 以人類可讀格式顯示目錄的總大小,而不是單個文件的大小(-s 總結)。
du -sh <fileName/dirName> - 顯示文件/目錄的總大小。
網絡命令:
ping
dig
wget
curl - 客戶端URL。
curl
ifconfig - 顯示可用的網絡接口。
ip addr - 顯示和操作網絡接口信息。
curl ifconfig.me - 顯示機器的公共ip地址。
netstat -antp- 顯示所有tcp打開的端口(-a 所有, t-tcp, n-活動, p 協議)。
traceroute
進程信息命令:
ps - 進程狀態。
ps - 顯示當前正在運行的進程。
ps -ef - 顯示系統的所有進程。
top - 顯示系統正在運行進程的實時、動態視圖。
kill
pgrep
bg - 背景,將進程發送到後臺並繼續執行,不中斷。
fg - 前臺,將進程帶到前臺並使其成爲活動進程。
nohup - 不掛起,在終端關閉或用戶註銷後在後臺運行命令/腳本。
歸檔文件命令:
tar - 磁帶存檔。
tar -cvf
tar -xvf
Ubuntu 包相關命令:
apt - Debian-based Linux發行版的包管理器,例如:Ubuntu。
apt - 更新版本的包管理器,帶有彩色輸出、進度條和附加功能。
apt-get - 較舊版本和基本的包管理器。
apt update - 更新包列表。
apt list --installed - 列出所有已安裝的包。
apt list --installed
apt show
apt search
apt install
apt remove
apt purge
雜項命令:
echo "sample text" | grep text - 使用管道(|)符號將第一個命令的輸出作爲第二個命令的輸入。
ls -l | tee file.txt - 將列表重定向到file.txt,並同時在終端中顯示。
echo "sample text" >
echo "new sample text" >>
stat <fileName/dirName> - 顯示文件或目錄的詳細信息。
cron - 用於管理預定任務的系統守護進程。
tree - 一個特定目錄的文件和目錄的樹表示。
這個博客頁面涵蓋了DevOps Warriors主要使用的linux命令,並且是一個不斷增長的文檔。
文章來源:
https://medium.com/@mj.vishweshwaran/vish-linux-commands-for-devops-warriors-3866e4f4e56