一、用變量存儲重複使用的字符串
#!/bin/bash # 使用變量存儲重複使用的字符串 # 不使用變量的寫法 echo "Linux is a great OS." echo "I love Linux." echo "However, sometimes it can be frustrating." # 使用變量的寫法 osname="Linux" echo "$osname is a great OS." echo "I love $osname." echo "However, sometimes $osname can be frustrating."
在shell腳本中,有些字符串可能需要在多個地方重複使用,為了避免每個地方都寫一遍,可以使用變量來存儲這些字符串。
二、使用函數封裝重複的代碼片段
#!/bin/bash
# 使用函數封裝重複的代碼片段
# 不使用函數的寫法
echo "Starting backup..."
rsync -avz --exclude '*.log' /data/backup/ user@backup-server:/backup/
echo "Backup finished."
echo "Starting archive..."
tar -czf /data/archive.tgz /data/archive/
echo "Archive finished."
# 使用函數的寫法
function backup_files {
echo "Starting backup..."
rsync -avz --exclude '*.log' /data/backup/ user@backup-server:/backup/
echo "Backup finished."
}
function archive_files {
echo "Starting archive..."
tar -czf /data/archive.tgz /data/archive/
echo "Archive finished."
}
backup_files
archive_files
在shell腳本中,有些代碼片段可能需要在多個地方重複使用,為了避免代碼冗餘,可以使用函數來封裝這些代碼片段。
三、使用if語句進行條件判斷
#!/bin/bash
# 使用if語句進行條件判斷
# 判斷文件是否存在
if [ -e /path/to/file ]; then
echo "File exists."
else
echo "File not found."
fi
# 判斷變量是否為空
if [ -z "$variable" ]; then
echo "Variable is empty."
else
echo "Variable is not empty."
fi
if語句是shell腳本中進行條件判斷的基本語句,可以用來判斷文件是否存在、變量是否為空等等。
四、使用for循環進行重複操作
#!/bin/bash
# 使用for循環進行重複操作
# 循環遍曆數組
names=("Alice" "Bob" "Charlie")
for name in "${names[@]}"; do
echo "Hello, $name!"
done
# 循環遍曆數字
for i in {1..10}; do
echo "$i"
done
for循環是shell腳本中進行重複操作的基本語句,可以用來循環遍曆數組、循環遍曆數字等等。
五、使用管道符號進行數據流處理
#!/bin/bash
# 使用管道符號進行數據流處理
# 查找某個目錄下佔用空間最大的10個文件
du -h /path/to/dir | sort -hr | head -n 10
# 統計某個日誌文件中各個HTTP狀態碼的出現次數
cat /var/log/nginx/access.log | awk '{print $9}' | sort | uniq -c | sort -rn
管道符號可以將一個命令的輸出作為另一個命令的輸入,可以用來進行數據流處理,比如查找某個目錄下佔用空間最大的文件、統計某個日誌文件中各個HTTP狀態碼出現的次數等等。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/190368.html
微信掃一掃
支付寶掃一掃