shell避坑 之变量与命令

1、变量使用()与{ }的区别

$pwd、${pwd}:都为变量pwd值,加{ }会更安全

$(pwd):执行命令,将命令的输出赋值 ,()为执行命令与反引号效果相同 ` `

[root@localhost home]# cat b21430/pwd.sh
#!/bin/bash
set -x
pwd=$(cd $(dirname ${0});pwd)
echo "little pwd $(pwd)"
echo "none pwd $pwd"
echo "big pwd ${pwd}"
exit 0
[root@localhost home]#

[root@localhost home]# bash b21430/pwd.sh
+++ dirname b21430/pwd.sh
++ cd b21430
++ pwd
+ pwd=/home/b21430
++ pwd
+ echo 'little pwd /home'
little pwd /home
+ echo 'none pwd /home/b21430'
none pwd /home/b21430
+ echo 'big pwd /home/b21430'
big pwd /home/b21430
+ exit 0

2、一串命令使用()和{}括起的区别
()和{}都是对一串的命令进行执行,

猜你喜欢

转载自blog.csdn.net/qq_29044159/article/details/108304934