一、概述

每个人在成功登陆Linux后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入需要的命令。若命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登陆到注销期间,输入的每个命令都会解译及执行,而负责的机制就是shell

二、Linux下Shell的执行过程

Shell可以理解为解析Linux命令的功能块,相当于Windows下的bat批处理文件,例如:在Windows桌面下新建del.bat文件,打开并编辑命令del E:\test.txt,在E盘目录下新建test.txt,双击del.bat后test.txt文件被删除。

三、Shell编程

其实作为命令语言互动式的解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中的批处理文件,称为shell script,又叫shell程序或shell命令文件。

感兴趣的朋友可以看看《Linux命令、编辑器和shell编程》这本书,还有新手入门文档《Linux与Unix shell编程指南》,网上可下载

四、shell的分类

  • Shell有很多,但常用的就几种

    Shell名称       开发者              命令名称

Bourne         S.R.Bourne       /bin/sh

    C                  Bill Joy             /bin/csh

    Kom              David              /bin/ksh

  • 查看系统所拥有的sh

   #ls –l /bin/*sh

注:l开头的文件为快捷方式,中国习惯bash,欧洲习惯用ksh

  • 查看目前使用的是哪种shell

   #env | more     注:该命令可以显示当前操作系统的环境变量

  

  • 修改shell

    #chsh –s 输入新的shell    如:/bin/dash                   注:shell所在的全路径

   

     更换shell后logout,然后再登录,发现dash命令提示符是以#开头

                              

Logout命令在dash下不识别,需要用exit

五、Shell命令的不全功能

用户在输入命令时,并不需要输入完整的命令,系统自动会找出最符合的名称。这种功能可以节省经常输入命令的时间。

比如:直接输入"mk"---再按两下"tab"键---会搜索出头两字母为"mk"的命令。

直接输入"cat my"---再按两下"tab"键---会搜索出当前目录下以字母"my"开头的所有文件或目录s

06 Linux下Shell介绍的更多相关文章

  1. .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础

    基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...

  2. Linux 下Shell变量,环境变量的联系与区别

    Linux下Shell变量,环境变量的联系与区别 by:授客 QQ:1033553122 1.  简介 linux下的变量可分成两种:Shell变量和环境变量. Shell变量,又称本地变量,包括私有 ...

  3. Linux下Shell元字符的释义

    Linux下shell的巧妙应用,对系统的运维很有四两拨千斤的功效! Shell元字符 注意: () 在当前shell的子shell进程运行命令 {}在当前shell进程运行命令

  4. Linux 下shell 编程学习脚手架

    linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...

  5. Linux 下Shell的学习

    1.Shell学习 1.什么是Shell    shell是一个命令解析器,在操作系统的最外层,负责和用户对话,将用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果.2.什么是shell脚本 ...

  6. [转] linux下shell中使用上下键翻出历史命名时出现^[[A^[[A^[[A^[[B^[[B的问题解决,Linux使用退格键时出现^H解决方法

    [From] https://www.zmrbk.com/post-2030.html https://blog.csdn.net/suifengshiyu/article/details/40952 ...

  7. Linux下shell通用脚本启动jar(微服务)

    Linux下shell通用脚本启动jar(微服务) vim app_jar.sh #!/bin/bash #source /etc/profile # Auth:Liucx # Please chan ...

  8. linux 下shell 编写脚本

    linux 下shell 编写脚本: 1.程序结构练习:编写一个脚本,给定一个正整数,计算出这个数所有位的数字之和. 例如:程序给定输入123,那么应该返回1+2+3=6. 2.程序结构练习:编写一个 ...

  9. Linux下Shell日期的格式,你知道几种?

    Linux下Shell日期的格式,你知道几种? 不管是哪种语言,日期/时间都是一个非常重要的值.比如我们保存日志的时候,往往是某个前缀再加上当前时间,这样日志文件名称就可以做到唯一. 在Shell环境 ...

随机推荐

  1. bind 方法实现

    [要求]:实现 bind 方法 [实现]: // 简单方法 Function.prototype.bind = Function.prototpe.bind || function(context) ...

  2. CentOS 6.2 OpenVPN 搭建

    一.yum 安装. 二.下载 easy-rsa 3.0 三.生成根证书.服务器.客户端证书.ta 生成流程: wget -c https://github.com/OpenVPN/easy-rsa/a ...

  3. 有k个list列表, 各个list列表的元素是有序的,将这k个列表元素进行排序( 基于堆排序的K路归并排序)

    解题思路: 排序方法:多路归并排序 每次将n个list的头元素取出来,进行排序(堆排序),最小元素从堆中取出后,将其所在list的下一个元素 放入堆中,调整堆序列. 函数实现原型: void list ...

  4. 227. Basic Calculator II

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  5. 349. Intersection of Two Arrays

    Given two arrays, write a function to compute their intersection. Example:Given nums1 = [1, 2, 2, 1] ...

  6. MySQL 参数autoReconnect=true 解决8小时连接失效

    <!--  dataSource加参数    处理mysql 8小时自动断开连接的问题 --> <property name="testWhileIdle" va ...

  7. window IIS6/IIS7取消脚本执行权限,禁止运行脚本木马

    网站安全中,对目录的执行权限是非常敏感的,一般来说,可以写入的目录是不能够拥有脚本的执行权限的,可写入的目录如: data.uploads,data目录主要是基本配置文件和缓存数据,uploads则是 ...

  8. Mysql存储日期类型用int、timestamp还是datetime?

    通常存储时间用datetime类型,现在很多系统也用int存储时间,它们有什么区别?个人更喜欢使用int这样对于日期计算时比较好哦,下面我们一起来看到底那种会好些. int ().4个字节存储,INT ...

  9. PC端的混合应用通讯问题

    exe使用C#开发,内嵌HTML页面HTML页面与exe程序的通讯方式可以使用以下方式: HTML通知exe:C#有个titlechange事件,可以监听内部HTML的title,那么HTML就可以通 ...

  10. MySQL Thread Pool: Problem Definition

    A new thread pool plugin is now a part of the MySQL Enterprise Edition.In this blog we will cover th ...