溫馨提示×

非常實用的23個Shell腳本實例

小云
95
2023-08-09 12:39:39
欄目: 編程語言

  1. 檢查文件是否存在
if [ -f file.txt ]; then
echo "文件存在"
else
echo "文件不存在"
fi
  1. 創(chuàng)建目錄
mkdir -p /path/to/directory
  1. 拷貝文件
cp file.txt /path/to/directory
  1. 刪除文件
rm file.txt
  1. 循環(huán)處理文件列表
for file in *.txt; do
echo $file
done
  1. 輸出當前日期和時間
echo $(date)
  1. 獲取當前腳本的路徑
script_path=$(dirname "$(readlink -f "$0")")
  1. 獲取命令行參數(shù)并進行判斷
if [ $# -eq 0 ]; then
echo "沒有參數(shù)"
else
echo "有參數(shù)"
fi
  1. 將命令輸出重定向到文件
command > output.txt
  1. 判斷字符串是否為空
if [ -z "$string" ]; then
echo "字符串為空"
else
echo "字符串不為空"
fi
  1. 判斷兩個字符串是否相等
if [ "$string1" = "$string2" ]; then
echo "字符串相等"
else
echo "字符串不相等"
fi
  1. 獲取文件的行數(shù)
line_count=$(wc -l < file.txt)
  1. 在文件中搜索關(guān)鍵詞并替換
sed -i 's/old_word/new_word/g' file.txt
  1. 執(zhí)行命令并將結(jié)果保存到變量
result=$(command)
  1. 提示用戶輸入并保存到變量
read -p "請輸入姓名:" name
  1. 計算兩個數(shù)的和
sum=$((num1 + num2))
  1. 判斷一個數(shù)是否為偶數(shù)
if ((num % 2 == 0)); then
echo "是偶數(shù)"
else
echo "不是偶數(shù)"
fi
  1. 判斷一個數(shù)是否為質(zhì)數(shù)
is_prime=true
for ((i=2; i<=num/2; i++)); do
if ((num % i == 0)); then
is_prime=false
break
fi
done
if $is_prime; then
echo "是質(zhì)數(shù)"
else
echo "不是質(zhì)數(shù)"
fi
  1. 循環(huán)執(zhí)行命令直到滿足條件
while ! command; do
sleep 1
done
  1. 批量重命名文件
for file in *.txt; do
mv "$file" "${file%.txt}.csv"
done
  1. 計算文件的md5哈希值
md5sum file.txt
  1. 批量壓縮文件
tar -czvf archive.tar.gz file1.txt file2.txt
  1. 批量解壓縮文件
tar -xzvf archive.tar.gz

0