- 检查文件是否存在
if [ -f file.txt ]; then echo "文件存在" else echo "文件不存在" fi
- 创建目录
mkdir -p /path/to/directory
- 拷贝文件
cp file.txt /path/to/directory
- 删除文件
rm file.txt
- 循环处理文件列表
for file in *.txt; do echo $file done
- 输出当前日期和时间
echo $(date)
- 获取当前脚本的路径
script_path=$(dirname "$(readlink -f "$0")")
- 获取命令行参数并进行判断
if [ $# -eq 0 ]; then echo "没有参数" else echo "有参数" fi
- 将命令输出重定向到文件
command > output.txt
- 判断字符串是否为空
if [ -z "$string" ]; then echo "字符串为空" else echo "字符串不为空" fi
- 判断两个字符串是否相等
if [ "$string1" = "$string2" ]; then echo "字符串相等" else echo "字符串不相等" fi
- 获取文件的行数
line_count=$(wc -l < file.txt)
- 在文件中搜索关键词并替换
sed -i 's/old_word/new_word/g' file.txt
- 执行命令并将结果保存到变量
result=$(command)
- 提示用户输入并保存到变量
read -p "请输入姓名:" name
- 计算两个数的和
sum=$((num1 + num2))
- 判断一个数是否为偶数
if ((num % 2 == 0)); then echo "是偶数" else echo "不是偶数" fi
- 判断一个数是否为质数
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 "是质数" else echo "不是质数" fi
- 循环执行命令直到满足条件
while ! command; do sleep 1 done
- 批量重命名文件
for file in *.txt; do mv "$file" "${file%.txt}.csv" done
- 计算文件的md5哈希值
md5sum file.txt
- 批量压缩文件
tar -czvf archive.tar.gz file1.txt file2.txt
- 批量解压缩文件
tar -xzvf archive.tar.gz