文章目录
- 1.什么是shell?
- 2.shell历史
- 3.编写一个shell脚本
- 3.1创建一个`.sh`文件
- 3.2 编写一个简单的脚本内容
- 3.3 执行
- 4.shell 数据类型和变量
- 4.1 数据类型
- 4.2 变量
- 5.文件名代换
- 6.命令代换
- 7.算术代换
- 8.转义字符
- 9.单引号
- 10.双引号
1.什么是shell?
2.shell历史
3.编写一个shell脚本
3.1创建一个.sh
文件
vim sample.sh
3.2 编写一个简单的脚本内容
#!/bin/sh#This is to show what a example looks likeecho "Our first example."echo #this inserts an empty line in output.echo ""/bin/pwdechoecho "This diractory contains following files"/bin/ls
3.3 执行
\qquad方法一:添加执行权限,并执行
chmod u+x sample.sh
./sample.sh
\qquad方法二:直接利用bash
或者sh
执行
/bin/bash sample.sh #或者/bin/sh sample.sh
\qquad方法三:直接利用. sample.sh
. sample.sh
\qquad方法四:利用source
source sample.sh
4.shell 数据类型和变量
4.1 数据类型
\qquadshell中只有一种数据类型:string
4.2 变量
\qquad 使用env
可以查看所有的环境变量
5.文件名代换
zhaoxr@zhaoxr-ThinkPad-E450:~$ ls *.c
a.c can_client.c client.c daemond.c fork1.c helloarm.c luyin.c pause1.c pthread_create.c server1.c sigaction.c stdin.c
arm_client.c ceshi.c c_python.c fopen.c fork2.c hello.c mul_server.c printf.c pthread_exit.c server.c sigsuspend.c system.c
zhaoxr@zhaoxr-ThinkPad-E450:~$ ls ?.c
a.c
zhaoxr@zhaoxr-ThinkPad-E450:~$ ls [abc].c
a.c
6.命令代换
#!/bin/bash
name=`date`
echo $name
zhaoxr@zhaoxr-ThinkPad-E450:~/shell$ . shell.sh
2021年 09月 19日 星期日 00:11:52 CST
或者
#!/bin/bash
name=$(date)
echo $name
zhaoxr@zhaoxr-ThinkPad-E450:~/shell$ . shell.sh
2021年 09月 19日 星期日 00:15:35 CST
7.算术代换
#!/bin/bash
#计算:(12*13+1)/3
name=$[(12*13+1)/3]
echo $name
zhaoxr@zhaoxr-ThinkPad-E450:~/shell$ . shell.sh
52
8.转义字符