Linux Shell命令:提高工作效率的利器

一、基礎知識

Shell是什麼?

Shell是一種命令行解釋器,它能夠作為用戶與Linux內核之間的接口,為用戶提供了一種操作系統內核的方式。

常見的Shell有哪些?

常見的Shell有Bash、Ksh、Tsh等,在Linux系統中,Bash被廣泛使用,它是GNU計劃的一部分,並且是大多數Linux系統的默認Shell。

Shell腳本是什麼?

Shell腳本是用Shell語言編寫的一組命令,它可以很方便地調用Linux系統提供的各種工具和命令。

二、常用命令

1、ls命令

ls [-aAdfFhilnrRSt] directory...

ls命令用於顯示當前工作目錄下的文件和子目錄,包含隱藏文件和分別對待文件和目錄。常用參數:

  • -a:顯示所有文件,包括隱藏文件。
  • -l:顯示詳細信息。
  • -h:配合-l使用,以易讀的方式顯示文件大小。

2、cd命令

cd [目錄名稱]

cd命令用於切換當前所在目錄。常用操作:

  • cd:切換到用戶主目錄。
  • cd ..:切換到上一級目錄。
  • cd /:切換到根目錄。

3、mkdir命令

mkdir [目錄名稱]

mkdir命令用於創建新的目錄。常用選項:

  • -p:遞歸創建目錄。

4、rm命令

rm [-fir] [文件或目錄]

rm命令用於刪除文件或目錄。常用選項:

  • -f:強制刪除,不進行確認。
  • -i:交互式刪除,需要確認。
  • -r:遞歸刪除目錄及其內容。

5、cp命令

cp [-adfilprsu] [源文件路徑] [目標文件路徑]

cp命令用於複製文件或目錄。常用選項:

  • -r:遞歸複製目錄及其內容。
  • -p:複製文件的屬性。
  • -f:強制覆蓋。

三、常用技巧

1、通配符

通配符是用來匹配文件名的特殊字符,常見的通配符有 *、?、[],通過使用通配符,可以進行批量操作。

# 顯示所有以 .txt 結尾的文件
ls *.txt
# 顯示所有以 t 開始的 3 個字符的文件
ls t??
# 顯示所有以 a、b、c 開頭的文件
ls [abc]*

2、管道

管道符(|)將一個命令的輸出作為另一個命令的輸入,可以用來進行數據的過濾和轉換。

# 顯示所有以 .txt 結尾的文件,並按文件大小排序
ls -l *.txt | sort -k 5
# 統計文件中包含 foo 關鍵字的行數
cat file.txt | grep 'foo' | wc -l

3、命令替換

命令替換($())可以將命令的輸出結果作為變量傳遞給其他命令。

# 顯示當前系統的登錄用戶數量
echo "當前系統用戶數量為 $(who | wc -l)"

四、綜合應用

將前綴為 a 的所有文件複製到新建的目錄中,並將文件名修改為以 z 結尾:

# 創建新目錄
mkdir new_dir
# 複製文件並重命名
cp -r a* new_dir/ && cd new_dir && rename 's/$/.z/' a*

統計當前目錄中所有文件的總大小:

# 輸出文件大小並求和
ls -l | awk '{print $5}' | grep '^[[:digit:]]' | awk '{s+=$1} END {print s}'

將 csv 文件中第 2,3 列合併為新的一列,並將價格乘以2:

# 使用awk命令進行列合併和計算
awk -F, '{print $1 "," $2+$3*2 "," $4}' file.csv

五、總結

Shell命令是Linux系統中不可或缺的一部分,通過掌握基礎知識和常用命令,可以大大提高工作效率和代碼質量,同時,熟練應用常用技巧和命令組合,可以進行複雜的數據處理和自動化操作。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/297503.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-28 12:16
下一篇 2024-12-28 12:16

相關推薦

  • lsw2u1:全能編程開發工程師的利器

    lsw2u1是一款多功能工具,可以為全能編程開發工程師提供便利的支持。本文將從多個方面對lsw2u1做詳細闡述,並給出對應代碼示例。 一、快速存取代碼段 在日常開發中,我們總會使用…

    編程 2025-04-29
  • Python刷課:優化學習體驗的利器

    Python刷課作為一種利用自動化技術優化學習體驗的工具已經被廣泛應用。它可以幫助用戶自動登錄、自動答題等,讓用戶在學習過程中可以更加專註於知識本身,提高效率,增加學習樂趣。 一、…

    編程 2025-04-29
  • Python命令大全及說明

    Python是一種高級編程語言,由Guido van Rossum於1989年底發明。它具有良好的語法結構和面向對象的編程思想,具有簡潔、易讀、易學的特點,是初學者以及專業開發人員…

    編程 2025-04-29
  • Git config命令用法介紹:用正確的郵箱保障開發工作

    本文將詳細介紹如何使用git config命令配置Git的全局和本地用戶信息,特別是如何正確使用用戶郵箱,保障Git操作的正常進行。 一、git config命令介紹 Git中的每…

    編程 2025-04-29
  • Python SSH 遠程執行命令

    Python SSH 遠程執行命令是指在一個服務器上執行遠程另一個服務器上命令。如果你需要在本地機器上執行命令,或者在遠程機器上執行本地命令,你都可以使用 SSH。在 Python…

    編程 2025-04-29
  • 剖析命令執行函數

    在編程開發過程中,命令執行函數是非常常見的一個概念。它是指接受一個命令字符串,並將其解析執行,返回相應的結果或錯誤信息的函數。本文將從多個方面對命令執行函數進行詳細的闡述,包括其定…

    編程 2025-04-28
  • HBuilder2.0:一站式開發利器

    本文將從如下幾個方面對HBuilder2.0進行詳細闡述,幫助初學者快速了解並開始使用該工具: 一、簡介 HBuilder2.0是一個跨平台的HTML5集成開發工具。它綜合了編碼、…

    編程 2025-04-28
  • Powersploit:安全評估與滲透測試的利器

    本文將重點介紹Powersploit,並給出相關的完整的代碼示例,幫助安全人員更好地運用Powersploit進行安全評估和滲透測試。 一、Powersploit簡介 Powers…

    編程 2025-04-28
  • JL Transaction – 實現分佈式事務管理的利器

    本文將為大家介紹JL Transaction,這是一款可以實現分佈式事務管理的開源事務框架,它可以幫助企業在分佈式環境下有效地解決事務的一致性問題,從而保障系統的穩定性和可靠性。 …

    編程 2025-04-28
  • 如何使用Python執行Shell命令並獲取執行過程信息

    本文將介紹如何使用Python執行Shell命令並獲取執行過程信息。我們將從以下幾個方面進行闡述: 一、執行Shell命令 Python內置的subprocess模塊可以方便地執行…

    編程 2025-04-28

發表回復

登錄後才能評論