变量的定义 使用命令declare $定义一个新变量 declare $test 定义一个名为test的新变量。或者通过直接赋值的形式定义新变量。
test = 1
定义一个名为test的变量,同时将它的值赋为1
打印变量的值可以使用echo命令。例如:
echo $test
环境变量有三种:
当前shell进程私有用户自定义变量
shell本身内建的变量
从自定义变量到处的环境变量
相关命令及说明:
set|命令显示当前Shell所有环境变量,包括其内建环境变量(与Shell外观等有关),用户自定义的变量及导出的环境变量。
env|显示与当前用户相关的环境变量,还可以让命令在指定环境下运行。
export|命令显示从shell中到处的环境变量,也可以通过该命令将自定义变量导出为环境变量。
输出环境变量:
export test
比较文件的命令:
vimdiff test1.txt test2.txt test3.txt
命令的查找路径与顺序 $PATH环境变量设置命令搜索路径 输出当前命令搜索路径的设置
echo $PATH
$PATH中临时添加自定义路径,用冒号连接路径
PATH=$PATH:/home/shiyanlou/code
变量修改
${变量名#匹配字符串}:从头往后匹配,删除符合匹配字符串的最短数据。
${变量名##匹配字符串}:从头往后匹配,删除符合匹配字符串的最长数据。
${变量名%匹配字符串}:从后往前匹配,删除符合匹配字符串的最短数据。
${变量名%%匹配字符串}:从后往前匹配,删除符合匹配字符串的最长数据。
${变量名/旧的字符串/新的字符串}:将旧的字符串的第一个字符串替换为新的字符串。
${变量名//旧的字符串/新的字符串}:将旧的字符串的全部字符串替换为新的字符串。
变量删除 使用unset命令删除一个环境变量。例如
$ unset test
使环境变量立即生效
$ source .zshrc
或者
$ . ./. zshrc
常用的文件搜索命令有:whereis, which,find,locate。
whereis简单快速
whereis直接从数据库中查询,并不是从硬盘中依次查找。whereis只能搜索二进制文件(-b),man帮助文件(-m)和源代码文件(-s)。
locate快而全
通过"/var/lib/mlocate/mlocate.db"数据库查找,系统会使用定时任务每天自动执行updatedb命令更新一次该数据库,有时需要手动执行一次updatedb命令将新文件添加进数据库。find命令可以用来查找指定目录下的不同文件类型,可以通过递归子目录进行查找。例如查找/etc下的所有以sh开头的文件
locate /etc/sh
loate /home/shiyanlou/Code/*.txt