查看: 1234|回复: 0
收起左侧

[教程经验] Shell脚本语法——变量

Lihoon 2020-8-4 23:51:41 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
本帖最后由 Lihoon 于 2020-8-8 17:14 编辑

文件查找

1        查看目录下的文件: ls

lihoon@lihoon:~/code/Linux_shell$ ls
command.sh  note.txt  sample.sh  temp.sh  temp.txt

2        查看目录下以.sh结尾的文件: ls *.sh

lihoon@lihoon:~/code/Linux_shell$ ls
command.sh  note.txt  sample.sh  temp.sh  temp.txt                                <<=原始文件

lihoon@lihoon:~/code/Linux_shell$ ls *.sh
sample.sh                        <<=筛选后的文件

3         查看目录下以.sh结尾并且目录为4个字符的文件: ls ????.sh

lihoon@lihoon:~/code/Linux_shell$ ls
command.sh  note.txt  sample.sh  temp.sh  temp.txt                                <<=原始文件

lihoon@lihoon:~/code/Linux_shell$ ls ????.sh
temp.sh                                <<=筛选后的文件

命令代换

4        通过变量来执行命令: $(command)

lihoon@lihoon:~/code/Linux_shell$ VAR=$(date)
lihoon@lihoon:~/code/Linux_shell$ echo $VAR
2020年 08月 04日 星期二 22:52:15 CST
lihoon@lihoon:~/code/Linux_shell$ VAR2=`date`
lihoon@lihoon:~/code/Linux_shell$ echo $VAR2
2020年 08月 04日 星期二 22:53:08 CST

5 取变量的值: $

lihoon@lihoon:~/code/Linux_shell$ VAR=$(pwd)
lihoon@lihoon:~/code/Linux_shell$ echo $VAR                                <<=取变量值
/home/lihoon/code/Linux_shell

lihoon@lihoon:~/code/Linux_shell$ echo ${VAR}                        <<=取变量值(常用)
/home/lihoon/code/Linux_shell

lihoon@lihoon:~/code/Linux_shell$ echo $(pwd)                        <<=取命令执行结果
/home/lihoon/code/Linux_shell

算数代换

6        对变量执行算术运算: $(())

lihoon@lihoon:~/code/Linux_shell$ VAR=99
lihoon@lihoon:~/code/Linux_shell$ echo $((VAR+1))
100

lihoon@lihoon:~/code/Linux_shell$ echo $[VAR+2]
101

lihoon@lihoon:~/code/Linux_shell$ echo $((${VAR}+3))
102

7        Shell中输入二进制、八进制、十六进制数值:#

lihoon@lihoon:~/code/Linux_shell$ echo $((2#10+1))
3

lihoon@lihoon:~/code/Linux_shell$ echo $((8#10+1))
9

lihoon@lihoon:~/code/Linux_shell$ echo $((16#10+1))
17

转义字符

8        转义字符: \

lihoon@lihoon:~/code/Linux_shell$ echo $PATH
/home/lihoon/software/anaconda3/bin:/home/lihoon/.local/bin:/usr/local/cuda-10.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/cuda-10.0/bin

lihoon@lihoon:~/code/Linux_shell$ echo \$PATH
$PATH

9        创建并删除---abc的文件:--

lihoon@lihoon:~/code/Linux_shell$ touch --abc
touch: unrecognized option '--abc'
Try 'touch --help' for more information.

lihoon@lihoon:~/code/Linux_shell$ touch -- --abc
lihoon@lihoon:~/code/Linux_shell$ ls
--abc  command.sh  note.txt  sample.sh  shell笔记1.md  temp  temp.sh  temp.txt

lihoon@lihoon:~/code/Linux_shell$ rm --abc
rm: unrecognized option '--abc'
Try 'rm ./--abc' to remove the file '--abc'.
Try 'rm --help' for more information.

lihoon@lihoon:~/code/Linux_shell$ rm ./--abc                        <<= 指令等同于rm -- --abc
lihoon@lihoon:~/code/Linux_shell$ ls
command.sh  note.txt  sample.sh  shell笔记1.md  temp  temp.sh  temp.txt

10        续航符:\

lihoon@lihoon:~/code/Linux_shell$ ls \
> -a
.   command.sh  sample.sh       shell笔记1.md  temp.sh
..  note.txt    .sample.sh.swp  temp           temp.txt

11        单引号——括字符串:‘ ’

lihoon@lihoon:~/code/Linux_shell$ echo 'This is a good tool.'
This is a good tool.

12        双引号——括字符串(可以展开变量):“”

lihoon@lihoon:~/code/Linux_shell$ date=`date`
lihoon@lihoon:~/code/Linux_shell$ echo "$date"
2020年 08月 04日 星期二 23:45:18 CST

已有 0 人打赏作者

回复 邀请回答送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

扫码下载掌上汇川APP

全国服务热线:8:30-17:30

4000-300124

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市龙华新区观澜街道高新技术产业园汇川技术总部大厦

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部