`
dengwenwei121
  • 浏览: 36341 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
文章分类
社区版块
存档分类
最新评论

Shell是什么?

 
阅读更多
shell为您提供了对UNIX系统的接口。向你收集的输入,并根据输入执行程序。当一个程序执行完毕后,它会显示该程序的输出。
shell是一个环境,我们可以运行我们的命令,程序和shell脚本。shell有不同的风格,就像有不同风格的操作系统。每个的shell的风格,有它自己的一套识别的命令和功能。

Shell 提示符:

提示符下这就是所谓的命令提示符下$,发出shell。虽然会显示提示,您可以键入一个命令。

shell读取输入后按Enter键。它决定了想要的命令和执行输入的第一个字符。一个字是一个完整的字符集。空格和制表符分隔单词。

以下是一个简单的例子date命令显示当前日期和时间:

$date
Thu Jun 25 08:30:19 MST 2009

你可以定制你的命令提示符下使用环境变量PS1环境教程解释。

Shell 类型:

在UNIX系统下有两种主要类型的shell:

  1. Bourne shell. 如果您使用的是Bourne类型的shell,默认提示符为$字符。

  2. C shell.如果您使用的是C型的shell,默认的提示字符%。

再还有各种Bourne shell的子类别列示如下:

  • Bourne shell ( sh)

  • Korn shell ( ksh)

  • Bourne Again shell ( bash)

  • POSIX shell ( sh)

不同的C型shell如下:

  • C shell ( csh)

  • TENEX/TOPS C shell ( tcsh)

原来的UNIX shell写于20世纪70年代中期,由斯蒂芬·伯恩,在新泽西AT&T贝尔实验室。

Bourne shell 是第一个shell 出现在UNIX系统上,因此,它被称为 "the shell".

Bourne shell的安装通常为 /bin/sh 在大多数UNIX版本。出于这个原因,它是编写脚本使用在几个不同的版本的UNIX shell。

在本教程中,我们将要覆盖大多数基于传播Borne Shell概念。

Shell 脚本:

shell脚本的基本概念是一个命令列表中列出的顺序执行。 #是shell脚本注释前面一英镑符号。

条件测试,如值A大于B值,循环我们去通过大量的数据,读取和存储数据的文件和变量的读取和存储数据,该脚本可能包含的功能。

shell脚本和函数都解释。这意味着他们不会被编译。

我们将在接下来的几个教程写了许多脚本。这将是一个简单的文本文件,在其中,我们会把我们所有的命令和其他一些必要的结构,告诉shell环境做什么,什么时候做。

示例脚本:

假设我们创建了一个test.sh脚本。注意:所有的脚本 .sh扩展。添加任何东西到脚本,需要提醒系统正在启动一个shell脚本。例如:

#!/bin/sh

这是告诉系统Bourne shell的执行下面的命令。这就是所谓的家shebang,因为“#”符号被称为哈希,和!符号被称为bang。

要创建一个包含这些命令的脚本,把shebang行第一,然后添加命令:

#!/bin/bash
pwd
ls

Shell 注释:

你可以把注释,在你的脚本如下:

#!/bin/bash

# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:
pwd
ls

现在保存上面的内容,使此脚本可执行如下:

$chmod +x test.sh

现在,你的shell脚本,可随时执行如下:

$./test.sh

This would produce following result:

/home/amrood
index.htm  unix-basic_utilities.htm  unix-directories.htm  
test.sh    unix-communication.htm    unix-environment.htm

注:要执行任何程序在当前目录中,执行可使用./program_name

扩展Shell脚本:

Shell脚本有几个必要的结构告诉shell环境做什么,什么时候做。当然,大多数脚本是比上述更加复杂。

shell毕竟,真正的编程语言,完成变量,控制结构,等等。无论脚本变得多么复杂,但是,它仍然是顺序执行的命令的列表。

下面的脚本使用读命令从键盘输入,并将其分配给变量PERSON的值,并最终打印在stdout。

#!/bin/sh

# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:

echo "What is your name?"
read PERSON
echo "Hello, $PERSON"

下面是运行的脚本示例:

$./test.sh
What is your name?
Zara Ali
Hello, Zara Ali
$

分享到:
评论

相关推荐

    shell是什么?shell实现原理分析基于MM32 MCU的shell脚本源码.docx

    shell是什么?shell实现原理分析基于MM32 MCU的shell脚本源码.docx

    解决idea would you like to install a shell script formatter?的问题 直接下载 shfmt.zip

    shfmt_v3.1.2_windows_amd64.exe shfmt_v3.1.2_windows_386.exe 解决idea would you like to install a shell script formatter?的问题

    B shell与 C shell的区别

    B shell与 C shell的区别 ; B shell的详解和C shell 的详解

    shell shell练习 shell入门

    shell shell练习 shell入门 shell shell练习 shell入门

    shell算法shell算法shell算法

    shell排序shell排序shell排序shell排序shell排序shell排序shell排序

    shell讲义shell讲义

    shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义...

    shell常用命令整理

    在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。基本上shell分两大类: 一:...

    Shell源码(Shell源码)

    Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码

    Linux 下 Shell的工作原理

    什么是shell  Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。  shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体...

    shellAdvanced.docx教程

    shell是什么?脚本是什么?balabala。。。学学这个吧,搞懂shell,成为真正的运维或者黑客,别再菜鸡还以为自己是高手了。

    shell 编程shell 编程

    shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程...

    LinuxShell脚本学习基础视频

    资源名称:Linux Shell脚本学习基础视频资源目录:【】11a00d99b60c4e2eba3440b8aa3a6bdd【】linux_shell脚本编程_01认识shell,如何编写shell脚本和执行【】linux_shell脚本编程_02vivim简单的常用操作【】linux_...

    shell编程指南shell编程指南shell编程指南shell编程指南

    shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南

    shell高级编程 shell的经典教程

    shell 是操作系统的最外层。shell 合并编程语言以控制进程和文件,以及启动和控制其它程序。shell 通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出来管理您与操作系统之间的交互。  ...

    shell语言编程shell语言编程

    shell shellshellshell shell shell shell

    01_shell编程.docx

    Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batch),用户事先写一个Shell脚本(Script),其中有很多...

    shell帮助文档shell帮助文档shell帮助文档

    shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档

    sshshell.zip

    sshshell ssh shell 服务器 远程连接 FTP for mac ssh shell 服务器 远程连接

    shell 编程指南pdf

    14.1 什么是shell变量 132 14.2 本地变量 132 14.2.1 显示变量 133 14.2.2 清除变量 133 14.2.3 显示所有本地shell变量 133 14.2.4 结合变量值 134 14.2.5 测试变量是否已经设置 134 14.2.6 使用变量来保存系统命令...

    Shell脚本中获取进程ID的方法

    提问: 我想要知道运行中脚本子shell的进程id。我该如何在shell脚本中得到PID。 当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为...

Global site tag (gtag.js) - Google Analytics