shell 脚本学习 user 16:50:13 Linux bash shell 脚本语法入门去论坛讨论来源: 作者: 发布时间: 2010-04-10 1. 基础#!/bin/bash //bash 脚本第一句都是这个,他会让系统指定以 bash 来解释这个脚本# //shell 脚本注释符号 2. 变量和使用 HOME="/home" // 注意赋值不要有空格 a=123 HOME_LIST=$(ls /home) // 把命令的执行结果赋值给变量 ehco $HOME //$ 符号是获得变量 HOME 的值 a=a+1 系统变量: $0 这个程序的执行名字$n 这个程序的第 n 个参数值, n=1...9 $* 这个程序的所有参数$# 这个程序的参数个数$$ 这个程序的 PID $! 执行上一个背景指令的 PID $? 上一个指令的返回值 语句 if[ "22" -lt "33" ] then // 注意空格 echo "22 less than 33" else echo "no" fi //if 语句的结束 语句 echo "enter a number" read ans // 读取一个变量 read case $ans in 1) echo "you numer is $ans" ;; // 注意符号是两个; 2) echo "you number is 2" ;; [3-9]) echo "you number is $ans" ;; *) //* 通配符 echo "others" esac 5. 比较运算符运算符描述示例文件比较运算符-e filename 如果 filename 存在, 则为真[ -e /var/log/syslog ] -d filename 如果 filename 为目录,则为真[ -d /tmp/mydir ] -f filename 如果 filename 为常规文件,则为真[ -f /usr/bin/grep ] -L filename 如果 filename 为符号链接,则为真[ -L /usr/bin/grep ] -r filename 如果 filename 可读,则为真[ -r /var/log/syslog ] -w filename 如果 filename 可写, 则为真[ -w /var/ ] -x filename 如果 filename 可执行,则为真[ -L /usr/bin/grep ] filename1 -nt filename2 如果 filename1 比 filename2 新,则为真[ /tmp/install/etc/services -nt /etc/services ] filename1 -ot filename2 如果 filename1 比 filename2 旧,则为真[ /boot/bzImage -ot arch/i386/boot/bzImage ] 字符串比较运算符(请注意引号的使用,这是防止空格扰乱代码的好方法) -z string 如果 string 长度为零,则为真[ -z "$myvar" ] -n string 如果 string 长度非零,则为真[ -n "$myvar" ] string1
shell脚本学习 来自淘豆网m.daumloan.com转载请标明出处.