PS1中可用信息 S 用s作为提示符 ld 显示\ 显示当前日期 hst 显示主机名 显示she名 显示当前时间(24) 显示当前时间(12) 显示当前时间(AMPM) u 显示用户名 显示bash的版本 显示当前工作目录 W≡温 显示当前工作路径
• PS1中可用信息 \$ 用$作为提示符 \\ 显示\ \d 显示当前日期 \h 显示主机名 \s 显示shell名 \t 显示当前时间(24) \T 显示当前时间(12) \@ 显示当前时间(AM/PM) \u 显示用户名 \v 显示bash的版本 \W 显示当前工作目录 \w 显示当前工作路径
52.5预定义的特殊变量 在shel中有一组特殊的变量,其变量名和变量值只有 she本身才可以设置。 “$#”记录传递给she的自变量个数 例1 myprog a b c 则$#的值为3 例2: if test $#-lt 2 then echo two or more args required exit fi
5.2.5 预定义的特殊变量 在shell中有一组特殊的变量,其变量名和变量值只有 shell本身才可以设置。 “$#” 记录传递给shell的自变量个数。 例1: myprog a b c 则 $#的值为3 例2: if test $# -lt 2 then echo ″ two or more args required ″ exit fi
“$?取最近一次命令执行后的退出状态:执行成功 返回码为0,执行失败返回码为1。 例 $test-rmy-file(假设my-fle文件不可读) S echo $? “$$”记录当前she0进程号
“$?”取最近一次命令执行后的退出状态:执行成功 返回码为0,执行失败返回码为1。 例: $test -r my-file(假设my-file文件不可读) $echo$? 1 “$$”记录当前shell的进程号
53shel中特殊字符 在shel中所使用的许多特殊符号也可为其他目的所 使用,包括通配符、转义符、单引号和双引号。 1.通配符 匹配任何字符串,包括空字符串; ?匹配任何单个字符; [.,y;!]按照范围、列表或不匹配等形式匹配指定 的字符; 转意符,使元字符失去其特殊的含义。 例: [a-d,x,y]匹配字符a、b、c、d、x、y; z匹配以字符开始的任何字符串;
5.3 shell中特殊字符 在shell中所使用的许多特殊符号也可为其他目的所 使用,包括通配符、转义符、单引号和双引号。 1. 通配符 * 匹配任何字符串,包括空字符串; ? 匹配任何单个字符; [.,-,!] 按照范围、列表或不匹配等形式匹配指定 的字符; \ 转意符,使元字符失去其特殊的含义。 例: [a-d,x,y] 匹配字符a、b、c、d、x、y; z* 匹配以字符z开始的任何字符串;
x?y匹配以x开始、以y结束、中间为任何单个字 符的字符串; !]匹配不为Z的单个字符 通配符作为文件扩展名的使用 例 [a-f]*匹配字符a到字符头的文件名,如abe, d2, e3.c, f dat: z匹配以字符结尾的任何字符串,如winz coreZ7, a-C-Z. re?d匹配以rc开始、以.d结束、中间为任何单个 字符的文件名,如rc0.d,rc2.d,rcS.d; ☆[!o]匹配不以o结尾的文件名
x?y 匹配以x开始、以y结束、中间为任何单个字 符的字符串; [!Z] 匹配不为Z的单个字符。 通配符作为文件扩展名的使用 例: [a-f]* 匹配字符a到字符f开头的文件名,如abc, d2,e3.c,f.dat; *z 匹配以字符z结尾的任何字符串,如win.z, core.zz,a-c-5z; rc?.d 匹配以rc开始、以.d结束、中间为任何单个 字符的文件名,如rc0.d,rc2.d,rcS.d; *[!o] 匹配不以o结尾的文件名