五、linux基础-shell机制
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机制的更多相关文章
- (转)Linux基础------Shell数值计算的几种方法
Linux基础------Shell数值计算的几种方法 原文:http://blog.csdn.net/fu_wayne/article/details/21620639 在Linux下总会遇到数值计 ...
- 五.Linux基础
Linux是运行在pc机上类似unix风格的操作系统,由众多程序员开发.开放源代码! 由于开放源代码,所以现在的Linux比windows漏洞更少! linux操作系统由内核及应用程序组成,有很多发行 ...
- linux 基础 shell脚本命令
#########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ## ...
- Linux基础-shell脚本知识整理和脚本编写----------变量、运算符、流程控制、函数、计划任务(发送邮件)
I:知识整理:变量.运算符.流程控制.函数.计划任务 变量 系统变量:set:显示所有变量 env:环境变量 常用系统变量: path pwd lang home his ...
- Linux基础-Shell脚本
任务一目标:自动部署.初始配置.并启动nginx反向代理服务 把任务拆分来看-自动部署部分,就是先下载安装Nginx 首先建立一个很NB霸气的目录还有一个同样NB霸气的.sh文件 /NBshell/M ...
- Python 基础之linux基础相关
一: python3.6.x在Ubuntu16.04下安装过程 #(1)保证网络正常连接 sudo add-apt-repository ppa:jonathonf/python-3.6 (如果超时 ...
- .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础
基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...
- 20155301 滕树晨linux基础——linux进程间通信(IPC)机制总结
20155301 滕树晨linux基础--linux进程间通信(IPC)机制总结 共享内存 共享内存是在多个进程之间共享内存区域的一种进程间的通信方式,由IPC为进程创建的一个特殊地址范围,它将出现在 ...
- linux基础之Shell Script入门介绍
本文介绍下,学习shell script编程的入门知识,通过几个入门实例,带领大家走进shell script的神圣殿堂,呵呵,有需要的朋友参考下. 本文转自:http://www.jbxue.com ...
随机推荐
- 再有人问你HashMap,把这篇文章甩给他!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java==集合中的精髓==了,如果你觉得自己对 ...
- JS高级---原型的简单的语法
原型的简单的语法 构造函数,通过原型添加方法,以下语法,手动修改构造器的指向 实例化对象,并初始化,调用方法 <!DOCTYPE html> <html lang="en& ...
- 20180923-WebService
什么是webservice? 什么是远程调用技术?答:系统和系统之间的调用,从远程系统当中获取业务数据. Webservice是web服务,他是用http传输SOAP协议数据的一种远程调用 ...
- 入门chrome插件开发教程和经验总结,一篇就搞掂!
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_44244857/articl ...
- Android9 http网络请求的问题
Google表示,为保证用户数据和设备的安全,针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的 ...
- 【C语言】创建一个函数,并调用比较三个数的大小
#include <stdio.h> int max(int x,int y,int z) { if(x>=y) if(x>=z) return x; else return ...
- SpringMVC Controller 接收页面传递的中文参数出现乱码
在Controller中接收到的POST参数如果是中文的话,显示为乱码.已知客户端传过来时编码为UTF-8. 问题产生分析: spring MVC中默认的编码格式为“ISO-8859-1”,因此造成乱 ...
- vue动态加载jQuery插件
要先npm安装jQuery插件哦 window.$=$; window.jQuery=$; function loadJs(Url,callback){ var Nscript=document.cr ...
- VS2017创建控制台应用后,编写完代码调试正常,使用exe文件直接执行出现闪退情况解决方法。
这是因为代码中包含的相对路径的原因. 解决办法:把项目中包含的所有相对路径修改为绝对路径. (个人觉得因为直接执行exe文件,默认打开在C盘的用户目录下.) 例如: std::string DATA_ ...
- Ubuntu各个版本的镜像下载地址
http://mirrors.melbourne.co.uk/ubuntu-releases/