Bash脚本编程一:变量

变量替换
$ name=jerry
$ echo $name # ${}引用变量
jerry

$ echo "this is a pig ${name}s."
this is a pig jerrys.
$ echo "this is a pig $names."
this is a pig .

用的是双引号" ",弱引用,可替换变量
' ' 单引号,强引用

$ echo 'this is a ${name}'
this is a ${name}
$ echo "this is a ${name}"
this is a jerry

本地变量:整个bash进程
局部变量:当前代码段 local NAME=
环境变量:当前shell进程及其子进程 export NAME=
$ export NAME=jeryy
$ echo $NAME 
jeryy
$ bash
yli@biotrainee:~$ echo $NAME 
jeryy

位置变量
$1,$2
特殊变量:
$?:保存上一个命令执行状态返回值, 可能有2类返回值(0-255)
0: 执行正确
1-255:错误
$ cut -d: -f1 /etc/passwd 
echo $?
0

$ ccussst -d: -f1 /etc/passwd
-sh: ccussst: command not found
$ echo $?
127

撤销变量
$ unset NAME
$ echo $NAME

查看当前shell变量
set 所有

查看环境 env
$ env
XDG_SESSION_ID=362863
TERM=xterm
SHELL=/bin/sh
SSH_CLIENT=110.187.211.136 55254 22
SSH_TTY=/dev/pts/8
USER=yli

$ name=$name,pig
$ echo $name 
pig,pig
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ A=2
$ B=3
$ C=$A+$B
$ C=$A+$B
$ echo $C
2+3

nano var.sh
#!/bin/bash
ls

$ ls -l var.sh 
-rw-rw-r-- 1 yli yli 15 Oct 27 10:07 var.sh
$ chmod +x var.sh 
$ ls -l var.sh 
-rwxrwxr-x 1 yli yli 15 Oct 27 10:07 var.sh
$ ./var.sh 
12.txt  readme.txt  var.sh

或者加入环境变量
$ export PATH=$PATH:/umac/ht1T/home//ylin
$ echo $PATH 
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/umac/ht1T/home//yli:/umac/:/umac/ht1T/home//ylin
$ var.sh 
12.txt  readme.txt  var.sh
友情阅读推荐:

生信技能树公益视频合辑:学习顺序是linux,r,软件安装,geo,小技巧,ngs组学!

B站链接:https://m.bilibili.com/space/338686099

YouTube链接:https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists

生信工程师入门最佳指南:https://mp.weixin.qq.com/s/vaX4ttaLIa19MefD86WfUA

学徒培养:https://mp.weixin.qq.com/s/3jw3_PgZXYd7FomxEMxFmw

你可能感兴趣的:(Bash脚本编程一:变量)