最近终于将shell语法知识捋了一遍,但是还有些小的知识点需要被总结和记录。
1、包含
之前的变量类型说到过,每个脚本里的变量都是独立的;但是我如果就想使用另一个脚本里的变量,要如何处理了,包含的作用就在这里显现了。如果一个脚本包含了另一个脚本,那么被包含脚本里的变量就可以被包含的脚本使用了。
shell里用点.表示包含关系;如下:
. filename # 注意点号(.)和文件名中间有一空格
test1.sh 代码如下:
#!/bin/bash
name='joy'
test2.sh 代码如下:
#!/bin/bash
../test1.sh
echo 'my name is $name'
执行test2.sh脚本
bash test2.sh
->my name is joy
2、 printf
它是shell里的一个输出命令,可使用格式化字符串输出命令。默认 printf 不会像 echo 自动添加换行符,需要手动添加 \n。
例:
$ echo "Hello, Shell"
Hello, Shell
$ printf "Hello, Shell\n"
Hello, Shell
$
与python类似,%s %d 都是格式替代符,%s表示字符,%d表示数字。
格式:
printf ''%s %d " 变量名
例:
printf "%s %s %d\n" 姓名 性别 年龄
->小明 男 10
网友评论