美文网首页
关于Linux命令和Shell语言

关于Linux命令和Shell语言

作者: 小米羊爱学术 | 来源:发表于2019-03-26 00:38 被阅读0次

接触Linux也蛮久了,通常是用Linux来跑一跑必须在linux上运行的程序,所以只了解一些简单的linux的命令行。但是每次查阅linux相关资料,总发现linux和shell捆绑在一起,我没有学过shell语言,我很好奇难道一定要学shell才能玩转linux么?shell作为一种编程语言,我可以用pyhton替代呀,为什么要学呢?我只要简单掌握几个awk之类的命令不就可以了么?

今天意外搜到一句话,解决了我关于shell和linux命令行之间的困惑:
相同点:
①基础命令行和Shell都可以操作Linux系统,区别在于
不同点:
①基础命令行(ls、cd等),是一种单一的操作。
②Shell可以比基础命令行更复杂,是一种组合型的操作。相比基础命令拥有了面向过程的概念。

至此,我思考了shell的优势,是比较轻量,可以单次操作,但是写法上确实有点诡异难以读懂。

举例——命令行可以一起执行多个命令:

  1. 每个命令之间用;隔开
    说明:各命令的执行结果,不会影响其它命令的执行。换句话说,各个命令都会执行, 但不保证每个命令都执行成功。
cd /home/PyTest/src; python suning.py

如果要在python里面写这个程序,那可能得花几分钟吧

  1. 每个命令之间用&&隔开
    说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,执行过程都是成功的。
cd /home/PyTest/src&&python suning.py
  1. 每个命令之间用||或者|隔开
    说明:||是或的意思,只有前面的命令执行失败后才去执行下一条命令,直到执行成功 一条命令为止。

管道可以将一个命令的输出导向另一个命令的输入,从而让两个(或者更多命令)像流水线一样连续工作,不断地处理文本流。在命令行中,我们用|表示管道

cd /home/PyTest/123 || echo "error234"
cd /home/PyTest/123 | echo "error234"
了解了以上之后,再去读比较官方的解答就好懂多了:

shell翻译成壳的意思,它是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面。 shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,shell script,来实现一些较为复杂的功能。
由定义可知, shell相当于经过装饰的命令行,和命令行一样,都能操作linux。但是shell是面向过程的,相当于有了一定的逻辑和过程,而命令行只是单一的操作

相关文章

  • Shell命令和Linux命令

    Shell命令和Linux命令 Shell shell是c语言编写的程序,是用户使用linux的桥梁。即是一种命令...

  • 关于Linux命令和Shell语言

    接触Linux也蛮久了,通常是用Linux来跑一跑必须在linux上运行的程序,所以只了解一些简单的linux的命...

  • Linux下的shell

    Shell 和 Linux shell程序是包含若干行shell或linux命令的文件。linux命令语句只能一行...

  • Shell从入门到放弃

    1、什么是Shell? shell 由C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,...

  • Shell 相关概念

    Shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell既是一种命令语言...

  • 0001-Hello world

    Shell 编程 Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。 Shell既是一种命令语言,...

  • Shell脚本介绍

    Shell Shell是一个用C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell既是一种命令语言,又...

  • Shell脚本学习与Linux下vim命令使用

    Shell介绍 Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又...

  • Linux shell

    shell既是命令也是编程语言,是用户与linux内核交互的平台。 熟悉bash命令 bash只是shell的一种...

  • 如何写shell脚本?尝试写一个简单的shell脚本

    1:什么是shell? shell是一个用C语言编写的程序,是用户使用linux的桥梁.shell既是一种命令语言...

网友评论

      本文标题:关于Linux命令和Shell语言

      本文链接:https://www.haomeiwen.com/subject/mmfwvqtx.html