在shell脚本的实际编写中,有一些特殊的变量十分有用: 1. $# 传递到脚本的参数个数 2. $* 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过9个 3. $$ 脚本运行的当前进程ID号 4. $! 后台运行的最后一个进程的进程ID号 5. $@ 与$#相同,但是使用时加引号,并在引号中返回每个参数 6. $- 显示shell使用的当前选项,与set命令功能相同 7. $? 显示最后命令的退出状态。0表示...
$0 被执行的命令的名字,对于 shell 脚本来说,这就是调用它的路径 $n 这些变量对应的是被一个脚本调用的参数。这里 n 是一个十进制数的正数,对应的十参数的位置(第一个参数是$1,第二个参数是$2,依此类推) $# 脚本支持的参数个数 $* 所有的参数被双重引用。如果脚本接收到两个参数,$*等于$1 $2 $@ 所有的参数都被独立地双重引用。如果脚本接收到两个参数,$@等于$1 $2 $? 最后一个被执行的命令的退出状态 $$ 当前 shel...
[color="#767676"]shell 中的一些特殊变量, 记下来很有用的... [color="#009902"]特殊变量[color="#0080FF"]$! [color="#0080FF"]代表最后执行的后台命令的[color="#0080FF"]PID[color="#0080FF"]$? 记录着最后退出的状态, 0表示没有错误$# 记录着传入的参数个数$@ 为所有参数列表,不受IFS控掉$* 所有参数列表 受IFS控制[color="#0080FF"]$$ 进程标识号[color="#0080FF"]$- 使用set及执行时传递给shell的标志位[color="#00...
特殊的变量: $0 这个程序的执行名字 $n 这个程序的第n个参数值,n=1...9 $* 这个程序的所有参数 $# 这个程序的参数个数 $$ 这个程序的PID $! 执行上一个背景指令的PID $? 上一个指令的返回值 $@ 表示带的参数 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/93470/showart_1941361.html
记下来,不会后悔d ...... =^= $? 记录着最后退出的状态 $# 记录着传入的参数个数 $@ 为所有参数列表,不受IFS控掉 $* 所有参数列表 受IFS控制 $$ 进程标识号 $- 使用set及执行时传递给shell的标志位 $0 为程序名称 $1 为第一个参数 $2 为第二个参数,以下类推 PS1 为提示符,可进行设置 PS1="[\u@\h \W]\$" PS2 为换行时的那个符号如 aa '换行后默认会出现>我们可以进行修改 PS2=''换成你喜欢的 IFS 为变量的分隔符,默认...
表格 B-1. 特殊的shell变量 变量 含义 $0 脚本名字 $1 位置参数 #1 $2 - $9 位置参数 #2 - #9 ${10} 位置参数 #10 $# 位置参数的个数 "$*" 所有的位置参数(作为单个字符串) * "$@" 所有的位置参数(每个都作为独立的字符串) ${#*} 传递到脚本中的命令行参数的个数 ${#@} 传递到脚本中的命令行参数的个数 $? 返回值 $$ 脚本的进程ID(PID) $- 传递到脚本中的标志(使用set) $_ 之前命令的最后一个参数 $! 运行在后台的最后一个作业的进...
有时候从文件中读入的内容含有特殊字符,然后在处理相应的字符串的时候就会被转义,如"/""$"。但是不同的字符串含有的特殊字符又不一样,怎么才能自动的处理呢? 就是当字符串变量在命令行中被解释时,特殊字符前面自动加上逃逸符“\”。 比如 $f=“Summary/Abstract” 现在有这么的语句 sed -n "/$f/=" filename 就会报错 多谢!
最近的日志取iphone手机系统版本的时候出现乱码,想把乱码替换掉,有啥办法? 2013-07-05 00:00:12 [INFO ][] - 2013-07-05 00:00:12,154|BROWSER|?ˉ<94>é<82>??¤??<8c>o 1.4.1 (iPhone; iPhone OS 6.1.zh_CN)|132.113.84.196|/service/user/login.json|null|null|null|null| 附一个带乱码的文本。 谢谢。
1 (cd /source/directory && tar cf - . ) | (cd /dest/directory && tar xpvf -) 2 # 从一个目录移动整个目录树到另一个目录 3 # [感谢Alan Cox <[email]a.cox@swansea.ac.uk[/email]>, 走出了部分修改] 4 5 # 1) cd /source/directory 源目录 6 # 2) && "与列表": 如果'cd'命令成功了, 那么就执行下边的命令. 7 # 3) tar cf - . 'c'创建一个新文档, 'f'后边跟'-'指定目标文...
以下材料摘自ABS3.7.2中文版,感谢原作者及译者 : 空命令,等价于"NOP"(no op,一个什么也不干的命令).也可以被认为与shell 的内建命令 (true)作用相同.":"命令是一 个bash 的内建命令,它的返回值为0,就是shell 返回的true. 如: 1 : 2 echo $? # 0 死循环,如: 1 while : 2 do 3 operation-1 4 operation-2 5 ... 6 operation-n 7 done 8 9 # 与下边相同: 10 # while true 11 # do 12 # ... 13 # done 在if/then 中的占位符,如: 1...