欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

什么是shell和shell编程

程序员文章站 2022-05-12 19:13:20
1.什么是shell? ? ? ? shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序。你在提示符下输入的每个命令都由shell先解释然后传给Linux...

1.什么是shell?

? ? ? shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序。你在提示符下输入的每个命令都由shell先解释然后传给Linux内核。?说到底,Shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为bash Shell

? ? ??Shell是解释执行的脚本语言,所谓脚本语言就是不用编译就可以直接执行的语言。在Shell中可以调用Linux系统命令。

? ? shell的最强大的重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语言支持在高级语言里所能见到的绝大多数程序控制结构,比如循环,函数,变量和数组。shell 编程语言很易学,并且一旦掌握后它将成为你的得力工具。任何在提示符下能键入的命令都能放到一个可执行的shell程序里,这意味着用shell语言能简单地重复执行某一任务。

2.linux中有哪些shell?

? ?一个系统可以存在多个shell,可以通过cat /etc/shells命令查看系统中安装的shell,不同的shell可能支持的命令语法是不相同的,但是最常用的shell还是/bin/bash。下面的演示也基于/bin/bash

[robot@hadoop103 ~]$ cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh

3.演示一个demo

一个简单的shell实例(用shell脚本语言启动tomcat)
#!/bin/sh
cd  /usr/local/apache-tomcat-5.5.23/bin/
./catalina.sh  start
文件取名为tomcat
说明	
这个脚本只有三行,它的第一行指明这个脚本程序由那个程序来解释。
第二行只有一个简单的动作进入某个目录,第三行调用catalina.sh脚本启动tomcat。
执行脚本
执行脚本前先赋予tomcat脚本可执行权限,命令如下:chmod  +x  tomcat ,
否则会出现如下错误:-bash: ./tomcat: Permission denied
假设tomcat脚本所在目录为为/home/amy/
在/home/amy/目录下执行脚本:  ./tomcat 
在别的目录下执行脚本:  /home/amy/tomcat

4.Shell编程模型

什么是shell和shell编程

5.Shell基本的执行方式
首先要赋予+x权限,赋予脚本执行权限
第一种:输入脚本的绝对路径或相对路径
? /root/helloWorld.sh
? ./helloWorld.sh
或者,不用赋予+x权限,而用解释器解释执行u+x
第二种:bash或sh +脚本
? sh /root/helloWorld.sh
? sh helloWorld.sh
第三种:在脚本的路径前再加". "
? . /root/helloWorld.sh
? . ./helloWorld.sh #注意这里两个点。当然加一个点也可以执行,属于第一种
区别:第一种和第二种会新开一个bash,不同bash中的变量无法共享
?先见森林,再见树木,知其然,再知其所以然