Linux-shell 变量参数

[[email protected] ~]# vickie=100
[[email protected] ~]# vickie03(){}
-bash: 未预期的符号 `{}' 附近有语法错误
[[email protected] ~]# vickie03(){
> echo $vickie
> vickie=222
> }
[[email protected] ~]# vickie
bash: vickie: 未找到命令...
[[email protected] ~]# vickie03
100
[[email protected] ~]# echo $vickie
222
[[email protected] ~]# vickie04(){
> local vickie=333
> }
[[email protected] ~]# echo vickie04
vickie04
[[email protected] ~]# vickie04(){
> local vickie1=333
> }
[[email protected] ~]# vickie04
[[email protected] ~]# echo $vickie1
 

[[email protected] ~]# vi sh01.sh
[[email protected] ~]# . sh01.sh 1 2 3 4 5 6 7 8 9 0 a b c
13
1 2 3 4 5 6 7 8 9 0 a b c
1 2 3 4 5 6 7 8 9 0 a b c
1
2
11
[[email protected] ~]# cat sh01.sh
echo $#
echo $*
echo [email protected]

echo $1
echo $2
echo $11

[[email protected] ~]# vi sh01.sh
[[email protected] ~]# . sh01.sh 1 2 3 4 5 6 7 8 9 0 a b c
13
1 2 3 4 5 6 7 8 9 0 a b c
1 2 3 4 5 6 7 8 9 0 a b c
1
2
a

[[email protected] ~]# vickie=vickie
[[email protected] ~]# echo $vickie
vickie
[[email protected] ~]# echo $vickiegood

[[email protected] ~]# echo ${vickie}good
vickiegood

[[email protected] ~]# ls -l /
总用量 28
lrwxrwxrwx.   1 root root           7 9月  27 02:39 bin -> usr/bin
dr-xr-xr-x.   5 root root        4096 11月 14 15:58 boot
drwxr-xr-x   20 root root        3320 11月 28 20:24 dev
drwxr-xr-x. 144 root root        8192 12月  3 08:20 etc
drwxr-xr-x.   6 root root          63 11月 27 18:27 home
lrwxrwxrwx.   1 root root           7 9月  27 02:39 lib -> usr/lib
lrwxrwxrwx.   1 root root           9 9月  27 02:39 lib64 -> usr/lib64
drwxr-xr-x.   2 root root           6 4月  11 2018 media
drwxr-xr-x.   2 root root           6 4月  11 2018 mnt
drwxr-xr-x.   4 root root          30 11月 28 18:45 opt
dr-xr-xr-x  213 root root           0 11月 27 11:43 proc
dr-xr-x---.   7 root root        4096 12月  3 09:23 root
drwxr-xr-x   41 root root        1240 12月  3 08:21 run
lrwxrwxrwx.   1 root root           8 9月  27 02:39 sbin -> usr/sbin
drwxr-xr-x.   2 root root           6 4月  11 2018 srv
dr-xr-xr-x   13 root root           0 11月 27 18:57 sys
drwxrwxrwt.  18 root root        4096 12月  3 08:21 tmp
drwxr-xr-x.  14 root root         167 11月 28 19:35 usr
drwxr-xr-x.  22 root root        4096 11月 28 22:19 var
drwx------    2 root sharevickie   24 11月 27 19:22 vickieshare
drwxr-xr-x    3 root root          15 11月 16 12:09 vik
[[email protected] ~]# echo $?
0
[[email protected] ~]# ls -l /god
ls: 无法访问/god: 没有那个文件或目录
[[email protected] ~]# echo $?
2
[[email protected] ~]# echo $$
16940
[[email protected] ~]# ls -l /etc | grep init
-rw-r--r--.  1 root root      265 10月 30 2018 gdbinit
drwxr-xr-x.  2 root root        6 10月 30 2018 gdbinit.d
lrwxrwxrwx.  1 root root       11 9月  27 02:39 init.d -> rc.d/init.d
-rw-r--r--.  1 root root      511 10月 31 2018 inittab
[[email protected] ~]# vickie=100
[[email protected] ~]# echo $vickie
100
[[email protected] ~]# vickie=200 | echo ok
ok
[[email protected] ~]# echo $vickie
100
[[email protected] ~]# echo $$
16940
[[email protected] ~]# echo $$ | cat
16940
[[email protected] ~]# echo $bashpid

[[email protected] ~]# echo $BASSHPID

[[email protected] ~]# echo $BASHPID
16940
[[email protected] ~]# echo $BASHPID | cat
3141

[[email protected] ~]# vi sh02.sh
[[email protected] ~]# cat sh02.sh
echo "hello"
echo $vickie
[[email protected] ~]# source sh02.sh
hello
100
[[email protected] ~]# bash sh02.sh
hello

[[email protected] ~]# export vickie
[[email protected] ~]# bash sh02.sh
hello
100
[[email protected] ~]# vi sh03.sh
[[email protected] ~]# cat sh03.sh
echo "-----------"
echo $vickie
vickie=22222
echo "------------------"
echo $vickie
sleep 20
echo $vickie
[[email protected] ~]# echo $vickie
100
[[email protected] ~]# bash sh03.sh &
[1] 19228
[[email protected] ~]# -----------
100
------------------
22222
22222
^C
[1]+  完成                  bash sh03.sh
[[email protected] ~]# echo $vickie
100
[[email protected] ~]# bash sh03.sh &
[1] 20186
[[email protected] ~]# -----------
100
------------------
22222

[[email protected] ~]# echo $vickie
100
[[email protected] ~]# 22222
[1]+  完成                  bash sh03.sh

[[email protected] ~]# echo $vickie
100
[[email protected] ~]# bash sh03.sh &
[1] 22081
[[email protected] ~]# -----------
100
------------------
22222

[[email protected] ~]# echo $vickie
100
[[email protected] ~]# vickie=33322222

[1]+  完成                  bash sh03.sh
[[email protected] ~]# echo $vickie
333

Linux-shell 变量参数
Linux-shell 变量参数

Linux-shell 变量参数