Fork me on GitHub

Shell 基础

变量

1.定义变量
  注意,变量名和等号之间不能有空格
  变量名的命名须遵循如下规则:
  1.命名只能使用英文字母,数字和下划线,首个字符不能以数字开头
  2.中间不能有空格,可以使用下划线(_)
  3.不能使用标点符号
  4.不能使用bash里的关键字(可用help命令查看保留关键字)

2.使用变量
  推荐: 给所有变量加上花括号 ${变量名}
  字符串里使用变量必须加{}
  如 echo "hello, $user", 输出是“hello, $user”

3.只读变量:readonly 命令,如readonly ${user}, 只读变量user的值不能被修改

4.删除变量:unset 命令
  变量被删除后不能再次使用。如unset ${user} echo ${user} 没有任何输出
  unset 命令不能删除只读变量


向脚本传递参数:$n

  n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推
  $0 为执行的文件名

1
2
3
4
5
6
7
8
9
#!/bin/bash
echo "执行的文件名:$0";
echo "第一个参数为:$1";
echo "第二个参数为:$2";
$ ./test.sh 1 2
执行的文件名:./test.sh
第一个参数为:1
第二个参数为:2

特殊字符:
  $# 传递到脚本的参数个数
  $* 以一个单字符串显示所有向脚本传递的参数。如”$“用「”」括起来的情况、以”$1 $2 … $n”的形式输出所有参数。
  $$ 脚本运行的当前进程ID号
  $! 后台运行的最后一个进程的ID号
  $@ 与$
相同,但是使用时加引号,并在引号中返回每个参数。如”$@”用「”」括起来的情况、以”$1” “$2” … “$n” 的形式输出所有参数。
  $- 显示Shell使用的当前选项,与set命令功能相同。
  $? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

-----------------本文结束,感谢您的阅读-----------------