下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

Linux shell入门学习

作者:课课家教育     来源: http://www.kokojia.com点击数:1422发布时间: 2018-01-06 14:00:55

标签: LinuxLinux系统编程语言

  从程序员的角度来看,shell本身是一种用C语言编写的程序,从用户的角度来看,shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用shell了脚本编程完成更加复杂的操作。在Linux GUI日益完善的今天,在系统管理等领域,shell编程仍然起着不可忽视的作用。深入地了解和熟练shell编程,是每一个Linux用户的必修课之一。
  linux系统管理员对于Linux shell并不陌生,或许每天都要使用。今天我们就对Linuxshell基础进行学习,希望能对像学习Linux shell脚本编程的初学者有一个明确的帮助,水平得到提高。
  本文就来给大家介绍shell的语法基础,开头、注释、变量等,虽然只是一些简单的介绍,但对以后的学习打下基础极为重要。

Linux shell入门学习_Linux_Linux系统_编程语言
  1、什么是shell?
  Linux系统的shell了作为操作系统的外壳,为用户提供给使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。
  Shell是用户和内核之间的接口程序,如果吧Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。
  Shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传入Linux核心。
  2、shell语法基本介绍
  2.1 开头
  程序必须以下面的行开始(必须放在文件的第一行):
  #!/bin/sh
  符号#!用来告诉系统后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
  当编辑好脚本时,如果要执行该脚本,还必须使其可执行。
  要使脚本可执行:
  编译 chmod +x filename 这样才能用./filename 来运行
  2.2注释
  在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。
  如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。
  2.3变量
  在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:
  #!/bin/sh
  #对变量赋值:
  a="hello world"
  # 现在打印变量a的内容:
  echo "A is:"
  echo $a
  有时候变量名很容易与其他文字混淆,比如:
  num=2
  echo "this is the $numnd"
  这并不会打印出"this is the 2nd",而仅仅打印"this is the ",因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:
  num=2
  echo "this is the ${num}nd"
  这将打印: this is the 2nd
  2.4环境变量

      由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。
  Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/csh)、K Shell(/usr/bin/ksh)、Shell for Root(/sbin/sh),等等。不同的Shell语言的语法有所不同,所以不能交换使用。每种Shell都有其特色之处,基本上,掌握其中任何一种就足够了。
  Bourne shell在shell编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种shell。linux操作系统缺省的shell是Bourne Again shell,它是Bourne shell的扩展,简称Bash,与Bourne shell完全向后兼容,并且在Bourne shell的基础上增加、增强了很多特性。Bash放在/bin/bash中,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能,它还包含了很多C shell和Korn shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。
  C shell是一种比Bourne shell更适于编程的shell,它的语法与C语言很相似。 Linux为喜欢使用C shell的人提供了Tcsh。Tcsh是C shell的一个扩展版本。Tcsh包括命令行编辑、可编程单词补全、拼写校正、历史命令替换、作业控制和类似C语言的语法,它不仅和Bash shell是提示符兼容,而且还提供比Bash shell更多的提示符参数。
  Korn shell集合了C shell和Bourne shell的优点并且和Bourne shell完全兼容。Linux系统提供了pdksh(ksh的扩展),它支持任务控制,可以在命令行上挂起、后台执行、唤醒或终止程序。
  Linux并没有冷落其他shell用户,还包括了一些流行的shell如ash、zsh等。每个shell都有它的用途,有些shell是有专利的,有些能从Internet网上或其他来源获得。要决定使用哪个shell,只需读一下各种shell的联机帮助,并试用一下。
  本文的内容就到这里结束,感兴趣的朋友可以深入学习哦!喜欢我们的分享,可以关注课课家哦!

赞(25)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程