变量替换
$ 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
网友评论