Shell入门

1. 定义
在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
我的理解就是shell提供了一种直接与OS进行交互的手段。
2. 应用场景

  1. 用于集成Linux命令,比如进行项目上线部署过程中可能需要执行一系列的Linux命令,每次都执行一次就很麻烦,而且容易出错等,这时候我们只需要将需要执行的命令写成shell脚本,然后部署的时候只要直接执行脚本即可,简单方便,此外还比如用于环境配置等。这里的话主要是要熟悉Linux命令为主。
  2. 用于数据处理,我理解的是shell是比Python更加高层的脚本,所以很多时候用shell进行数据处理会非常方便,可能用Python要写好多行代码,用shell只需要一行命令就解决了,大大降低了开发成本。这里的话主要学习awk这样非常强大的工具。

综上所述,shell是一种强大的脚本,且能够直接与OS交互,但是不适用密集计算以及复杂系统的实现等,这样的需求还是交给C++,Java等比较合适。

3. 入门脚本 - 求1-n的所有素数

echo "please input an integer"
read num

for ((i=2; i<=num; i++))
do
        j=2
        flag=1
        while (( j*j<=i ))
        do
                if (( i%j==0 )); then
                        flag=0
                        break
                fi
                ((j++))
        done
        if (( flag==1 )); then
                echo $i"是素数"
        fi
done

写个简单的入门脚本,主要是熟悉语法,语法还是有很多坑的,此外其他的高级应用待后续用到再进行学习总结。

参考文献:
《实战Linux Shell编程与服务器管理》

你可能感兴趣的:(Shell)