shell中特殊字符(串)
$$ 含义: 表示运行当前脚本的pid
例子: echo "current pid: $$"
\ 含义:字符串中的转义符号
例子: echo "\$\$ is used to get pid: $$"
$@ 和 $* 含义:表示所有的参数
例子: echo "all arg: $*" 或者 echo "all arg: $@"
两者的区别在于$@比$*更高级,它不使用IFS环境变量,所以即使IFS为空,参数也不会挤在一起,故推荐用$@
$+数字 含义:运行脚本的参数
例子:echo "cmd: $0 $1"
注意,调用字脚本的时候,其参数显示的是调用子脚本时带的参数,而与调用父脚本的参数无关
"" 含义:表示字符串,可引用除$、` 、\ 、外的任意字符或字符串,""中的变量能够正常显示变量值。要表示字符串的时候最好加上""
例子:"$name is me" 会打印出变量name的值
'' 含义:也表示字符串,与""类似, 但是shell会忽略任何的引用值。
例子: '$name is me' 仅仅按照原样打印$name
注意,''会在双引号中失去忽略引用的作用,比如 "'$name' is me" 同样会大出变量name的指
` ` 含义:用于设置系统命令的输出到变量,shell会将` `中的内容作为一个系统命令并执行质。
例子: echo `date`
注意: ``中可以同时加入多个命令,用:隔开就好,但是``不能嵌套
例子: echo `cd "."; pwd` 用于获得当前的完整绝对路径
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步