5.1 shell机制
1、Linux命令程序员可以看懂,但是操作系统是不懂这句话的含义的。因为所有的命令必须重新被解释然后传递给Linux内核才可以执行。这一被解释的机制就是shell。
  Linux命令先被shell解释成内核可以执行的代码,然后再由Linux内核进行运行。作为命令语言互动式的解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于dos 中的批处理文件,称为shell script ,又叫shell程序或shell命令文件。

2、常用的shell有:
shell名称    开发者        命令名称
Bourne        S.R Bourne    /bin/sh   是我们中国常用的
C            Bill Joy    /bin/csh
Kom            David        /bin/ksh
在不同的shell里面,使用后的命令是不完全相同的,在sh里面用的命令,在csh里面不一定使用。

5.2 相关命令
1、如何查看自己装的Linux系统里面有哪些shell
[root@ODSDEVDB01 bin]# ls  -l  /bin/*sh
-rwxr-xr-x 1 root root 801512 Oct 21  2008 /bin/bash
lrwxrwxrwx 1 root root      4 Nov 22  2012 /bin/csh -> tcsh
lrwxrwxrwx 1 root root     21 Nov 22  2012 /bin/ksh -> /etc/alternatives/ksh
lrwxrwxrwx 1 root root      4 Nov 22  2012 /bin/sh -> bash
-rwxr-xr-x 1 root root 352904 Oct  5  2010 /bin/tcsh
-rwxr-xr-x 1 root root 596272 Sep 21  2010 /bin/zsh
2、查看当前操做系统使用的是那种shell
env | more    该命令可以显示当前操作系统的环境变量
SHELL=/bin/bash
3、shell的修改
chsh -s   输入新的shell             如:/bin/csh
4、shell补全功能
是指用户输入命令时,并不需要输入完整的命令,而系统自动回找出最符合的名称,这种功能可以节省经常输入命令的时间。直接输入“mk”,再按两下“tab”键,出现两头两个字母为“mk”命令。cat p  再按两下“tab”键,会出现开头字母为“p”的所有文件或目录。
示例1:输入“mk”,再按两下“tab”键
[root@ODSDEVDB01 zjbdir]# mk
mkafmmap        mkdict          mkdumprd        mkfontdir       mkfs.ext2       mkfs.msdos      mkinitrd        mknod           mksock          mkudffs         
mk-amd-map      mkdir           mke2fs          mkfontscale     mkfs.ext3       mkfs.vfat       mkisofs         mkpasswd        mksquashfs      mkxauth         
mkbootdisk      mkdirhier       mke4fs          mkfs            mkfs.ext4       mkhtmlindex     mklost+found    mkrfc2734       mkswap          mkzftree        
mk_cmds         mkdosfs         mkfifo          mkfs.cramfs     mkfs.ext4dev    mkhybrid        mkmanifest      mksmbpasswd.sh  mktemp          mkzonedb    
示例2:输入cd p,再按两下”tab”键,会出现开头字母为p的所有文件或目录
cd plearning

五、linux基础-shell机制的更多相关文章

  1. (转)Linux基础------Shell数值计算的几种方法

    Linux基础------Shell数值计算的几种方法 原文:http://blog.csdn.net/fu_wayne/article/details/21620639 在Linux下总会遇到数值计 ...

  2. 五.Linux基础

    Linux是运行在pc机上类似unix风格的操作系统,由众多程序员开发.开放源代码! 由于开放源代码,所以现在的Linux比windows漏洞更少! linux操作系统由内核及应用程序组成,有很多发行 ...

  3. linux 基础 shell脚本命令

    #########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ## ...

  4. Linux基础-shell脚本知识整理和脚本编写----------变量、运算符、流程控制、函数、计划任务(发送邮件)

    I:知识整理:变量.运算符.流程控制.函数.计划任务 变量 系统变量:set:显示所有变量                env:环境变量 常用系统变量: path pwd lang home his ...

  5. Linux基础-Shell脚本

    任务一目标:自动部署.初始配置.并启动nginx反向代理服务 把任务拆分来看-自动部署部分,就是先下载安装Nginx 首先建立一个很NB霸气的目录还有一个同样NB霸气的.sh文件 /NBshell/M ...

  6. Python 基础之linux基础相关

    一: python3.6.x在Ubuntu16.04下安装过程 #(1)保证网络正常连接 sudo add-apt-repository ppa:jonathonf/python-3.6  (如果超时 ...

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

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

  8. 20155301 滕树晨linux基础——linux进程间通信(IPC)机制总结

    20155301 滕树晨linux基础--linux进程间通信(IPC)机制总结 共享内存 共享内存是在多个进程之间共享内存区域的一种进程间的通信方式,由IPC为进程创建的一个特殊地址范围,它将出现在 ...

  9. linux基础之Shell Script入门介绍

    本文介绍下,学习shell script编程的入门知识,通过几个入门实例,带领大家走进shell script的神圣殿堂,呵呵,有需要的朋友参考下. 本文转自:http://www.jbxue.com ...

随机推荐

  1. 再有人问你HashMap,把这篇文章甩给他!

    声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java==集合中的精髓==了,如果你觉得自己对 ...

  2. JS高级---原型的简单的语法

    原型的简单的语法 构造函数,通过原型添加方法,以下语法,手动修改构造器的指向 实例化对象,并初始化,调用方法 <!DOCTYPE html> <html lang="en& ...

  3. 20180923-WebService

    什么是webservice?    什么是远程调用技术?答:系统和系统之间的调用,从远程系统当中获取业务数据.    Webservice是web服务,他是用http传输SOAP协议数据的一种远程调用 ...

  4. 入门chrome插件开发教程和经验总结,一篇就搞掂!

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_44244857/articl ...

  5. Android9 http网络请求的问题

    Google表示,为保证用户数据和设备的安全,针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的 ...

  6. 【C语言】创建一个函数,并调用比较三个数的大小

    #include <stdio.h> int max(int x,int y,int z) { if(x>=y) if(x>=z) return x; else return ...

  7. SpringMVC Controller 接收页面传递的中文参数出现乱码

    在Controller中接收到的POST参数如果是中文的话,显示为乱码.已知客户端传过来时编码为UTF-8. 问题产生分析: spring MVC中默认的编码格式为“ISO-8859-1”,因此造成乱 ...

  8. vue动态加载jQuery插件

    要先npm安装jQuery插件哦 window.$=$; window.jQuery=$; function loadJs(Url,callback){ var Nscript=document.cr ...

  9. VS2017创建控制台应用后,编写完代码调试正常,使用exe文件直接执行出现闪退情况解决方法。

    这是因为代码中包含的相对路径的原因. 解决办法:把项目中包含的所有相对路径修改为绝对路径. (个人觉得因为直接执行exe文件,默认打开在C盘的用户目录下.) 例如: std::string DATA_ ...

  10. Ubuntu各个版本的镜像下载地址

    http://mirrors.melbourne.co.uk/ubuntu-releases/