凡是过往,皆为序章

0%

Shell基础命令

总结Linux中的shell命令


1、基本语法

使用vi编辑器新建一个文件 hello.sh

1
2
#!/bin/bash			# 开头固定
echo "Hello world!"

执行方式

  1. sh hello.sh

  2. chmod +x ./hello.sh    # 使脚本具有执行权限
    ./hello.sh            # 执行脚本
    
    1
    2
    3
    4
    5
    6
    7
    8
    9

    ## 3、变量

    ### 局部变量

    ```shell
    #!/bin/bash
    str="hello"
    echo ${str}world # helloworld

环境变量

1
2
echo $PATH
echo $HOME

若想查看所有的环境变量,使用命令:env

编辑环境变量,在/etc/profile 中,通过 export 关键字。

1
export MYENV=/root/myenv

4、特殊字符

符号 含义
$# 传递到将本的参数个数
$* 以一个但字符串显示所有向脚本传递的参数
$$ 脚本运行的当前进程ID号
$! 后台运行的最后一个进程的ID号
$@ 与$*相同,但是使用时加引号,并在引号中返回每个参数
$? 显示最后命令的退出状态,0表示没有错误,其他任何值表示有错误
1
2
3
4
#!/bin/bash
echo "第一个参数为: $1"
echo "参数个数为:$#"
echo "传递的参数作为一个字符串显示:$*"

执行:./test.sh 1 2 3

5、运算符

以加法 + 为例。

1
2
3
4
5
6
#! /bin/bash
a=1;
b=2;
echo `expr $a + $b`;
echo $((a+b));
echo $[a+b];

6、if语句

1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
read -p "Please input your name:" NAME # read命令用于从控制台读取输入的数据,然后存入NAME变量
if [ $NAME = root ]
then
echo "hello ${NAME}"
elif [ $NAME = dongao ]
then
echo "hello ${NAME}"
else
echo "Get out"
fi

7、for语句

方式1:

1
2
3
4
5
#!/bin/bash
for N in 1 2 3
do
echo $N
done

方式2:

1
2
3
4
5
#!/bin/bash
for ((i = 0; i <= 5; i++))
do
echo "$i"
done

8、函数

1
2
3
4
5
6
7
8
9
10
#!/bin/bash
funWithReturn(){
echo "输入第一个字"
read aNum
echo "输入第二个字"
read bNum
return $(($aNum+$bNum))
}
funWithReturn # 调用函数
echo "输入的两个数字之和为 $? " # $? 提取上一个返回值
~感谢你请我吃糖果~
-------------本文结束,感谢您的阅读,欢迎评论留言!-------------