服务器测评网
我们一直在努力

Linux脚本基础入门,新手必学的核心命令有哪些?

Linux脚本基础

Linux脚本(Shell脚本)是Linux系统中自动化任务的重要工具,通过将一系列命令组合成一个可执行的文件,简化重复性操作,提高工作效率,本文将介绍Linux脚本的基础知识,包括脚本创建、执行、变量、控制结构、函数及常见应用场景。

Linux脚本基础入门,新手必学的核心命令有哪些?

脚本创建与执行

Linux脚本通常以.sh为扩展名,第一行必须指定解释器,如#!/bin/bash(使用Bash解释器),创建脚本时,可通过文本编辑器(如vinano)编写命令,

#!/bin/bash
echo "Hello, Linux Script!"

保存后(如hello.sh),需赋予执行权限:

chmod +x hello.sh

执行脚本的方式有两种:

  • 直接运行:./hello.sh(需当前目录有执行权限)
  • 通过解释器:bash hello.sh(无需执行权限)

变量与数据类型

脚本中的变量无需声明类型,直接赋值即可,

name="Alice"
age=25
echo "Name: $name, Age: $age"

变量命名规则:

  • 以字母或下划线开头,不能包含空格或特殊字符
  • 区分大小写(如Namename是不同变量)
  • 引用变量时需加符号,如$name

特殊变量:

  • $0:脚本名称
  • $1$2…:位置参数(脚本执行时的参数)
  • 上一条命令的退出状态(0表示成功,非0表示失败)
  • 当前进程ID

输入输出与重定向

脚本可通过read命令接收用户输入:

read -p "Enter your name: " username
echo "Hello, $username!"

输出重定向:

Linux脚本基础入门,新手必学的核心命令有哪些?

  • >:覆盖输出到文件
  • >>:追加输出到文件
  • 2>:错误输出重定向
  • &>:标准输出和错误输出合并重定向
ls > file_list.txt  # 将目录列表保存到file_list.txt
ls non_existent_file 2> error.log  # 错误信息保存到error.log

条件判断

脚本通过ifcase等语句实现逻辑控制。if语句的基本结构:

if [ condition ]; then
    # 条件成立时执行
elif [ condition ]; then
    # 其他条件成立时执行
else
    # 条件不成立时执行
fi

常见条件判断:

  • 数值比较:-eq(等于)、-ne(不等于)、-gt(大于)
  • 字符串比较:(等于)、(不等于)、-z(字符串为空)
  • 文件测试:-f(是否存在且为普通文件)、-d(是否存在且为目录)

示例:

if [ $age -ge 18 ]; then
    echo "Adult"
else
    echo "Minor"
fi

循环结构

循环用于重复执行命令,常见类型包括forwhileuntil

for循环:遍历列表或文件

for i in 1 2 3 4 5; do
    echo "Number: $i"
done

while循环:条件为真时循环

count=1
while [ $count -le 5 ]; do
    echo "Count: $count"
    ((count++))
done

until循环:条件为假时循环

count=5
until [ $count -eq 0 ]; do
    echo "Countdown: $count"
    ((count--))
done

函数定义

函数可封装代码块,提高脚本复用性:

Linux脚本基础入门,新手必学的核心命令有哪些?

function greet() {
    echo "Hello, $1!"  # $1是函数的第一个参数
}
greet "Bob"  # 调用函数并传递参数

函数返回值通过return设置,但更推荐通过echo输出结果:

function add() {
    echo $(($1 + $2))
}
result=$(add 10 20)
echo "Result: $result"

数组与字符串操作

数组:支持索引数组和关联数组

# 索引数组
fruits=("apple" "banana" "cherry")
echo ${fruits[0]}  # 输出第一个元素
echo ${fruits[@]}  # 输出所有元素
# 关联数组
declare -A colors
colors["red"]="#FF0000"
echo ${colors["red"]}

字符串操作

  • 拼接:greeting="Hello, "$name"!"
  • 长度:${#string}
  • 截取:${string:2:4}(从第2个字符开始截取4个字符)

脚本调试与优化

调试脚本时,可通过以下方式排查问题:

  • 使用-x选项:bash -x script.sh(显示执行的每条命令)
  • 使用set -e:脚本出错时立即退出
  • 使用set -u:引用未定义变量时报错

优化建议:

  • 添加注释,提高可读性
  • 避免硬编码路径或值,改用变量
  • 使用函数拆分复杂逻辑

实际应用场景

  • 文件备份:自动压缩并备份指定目录
  • 日志监控:实时监控日志文件并提取关键信息
  • 系统维护:定期清理临时文件或更新软件包
  • 批量操作:通过循环对多个文件执行相同命令

Linux脚本是提升工作效率的利器,掌握基础语法和逻辑结构后,可灵活应用于自动化任务,从简单的命令组合到复杂的逻辑处理,脚本能力随实践逐步提升,建议多动手编写脚本,结合实际需求优化功能,最终实现高效、可靠的Linux系统管理。

赞(0)
未经允许不得转载:好主机测评网 » Linux脚本基础入门,新手必学的核心命令有哪些?