小鸟初学Shell编程(一)认识Shell

开篇介绍

Linux里非常的有用的一个功能,这个功能就叫Shell脚本。

Shell脚本在我日常开发工作里也占了非常重要的角色,项目中一些简单的工作我们都可以使用Shell脚本来完成,比如定时删除日志文件脚本、一键部署系统脚本等一些自动化的功能。

所以掌握好Shell脚本编程,处理一些自动化繁琐的事情会有事半功倍的效果。不管是Linux开发人员还是运维人员都有必要掌握Shell编程。


什么是Shell?

Shell是命令解释器,用于解释用户对操作系统的操作。

简单的理解就是,Shell会把用户所执行的命令,翻译给Linux内核,Linux内核在根据命令执行的结果,返回给用户。

比如 Linux查看文件列表的ls命令

[[email protected] /]# ls
bin   dev  home  lib64       media  opt   root  selinux  sys  usr
boot  etc  lib   lost+found  mnt    proc  sbin  srv      tmp  var

ls执行的过程简单概述如下:

我们可以通过简单命令,控制内核和操作系统,做我们很多想做的事情,初学者用户也不用去了解Linux的底层知识,那么这就是Shell解释器最主要的功能。

Shell有很多种
可以通过cat /etc/shells查看你的Linux系统支持的Shell,我的Linux是CentOs6.5,它支持的Shell如下:

[[email protected] /]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash

CentoO6.5 Linux常用和默认的Shell就是bash,我们先只需重学习bash就可以了。

小结

本章简单的介绍了Shell基本概念:

  • Shell的作用就是解释用户输入的Linux命令给内核,内核会把命令的执行结果,返回给Shell,Shell在显示给用户看。
  • Shell种类也有很多,每个系统的默认的Shell都有所不同,CentOs6.5默认的Shell解释器是bash。

原文地址:https://www.cnblogs.com/xiaolincoding/p/11601011.html

时间: 2024-11-12 09:20:58

小鸟初学Shell编程(一)认识Shell的相关文章

shell编程培训之shell的工作原理

Shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其间缺省运用的是Bash.本章叙述了shell的作业原理,shell的品种,shell的一般操作及Bash的特性. 什么是shell Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称. Shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层.当从shell或其他程序向Linux传递命

第三部分shell编程3(shell脚本编写1)

做监控和备份最多 1. shell脚本是什么它是一种脚本语言,并非编程语言可以使用一些逻辑判断.循环等语法可以自定义子函数是系统命令的集合shell脚本可以实现自动化运维,大大增加我们的工作效率 第一个shell脚本:mkdir shellcd shell/vim 1.sh``#! /bin/bash`#This is a test shell script``echo "123456."`touch aming.111`date 2. shell脚本结构以及执行方法开头行指定bash

Shell编程-11-子Shell和Shell嵌套

目录 什么是子Shell 子Shell产生的途径 Shell脚本调用模式 什么是子Shell ? ? 子Shell的概念其实是贯穿整个Shell的,如果想要更好的理解和写Shell脚本则必须要了解子Shell的相关知识.其概念如下所示: 子Shell本质就是从当前的Shell环境中打开一个新的Shell环境,而新开的Shell称之为子Shell(SubShell),相应的开启子Shell的环境称之为父Shell.子Shell和父Shell是子进程和父进程的关系,而这个进程则全部是bash进程.子

第三部分shell编程3(shell脚本2)

7. if 判断一些特殊用法 if [ -z $a ] 这个表示当变量a的值为空时会怎么样if grep -q '123' 1.txt; then 表示如果1.txt中含有'123'的行时会怎么样if [ ! -e file ]; then 表示文件不存在时会怎么样if (($a<1)); then …等同于 if [ $a -lt 1 ]; then… [ ] 中不能使用<,>,==,!=,>=,<=这样的符号 if [ ! $a -gt 0 ];then... 代表不大于

linux shell编程之简单shell及windows文件相互转化

什么是shell? ls 出现一堆目录?执行过程是怎样的?ls是应用程序,shell将其转化为01代码转给内核,内核转给硬件,之后再返回! shell同样是强大编程语言! 查看系统支持哪些shell? 命令名称:echo 参数: -e 支持反斜线字符转化 一个小例子: 开始编写一个shell shell执行: 下面来说关于window和linux文件相互转化 转化命令:

linux系统-shell编程-几个shell脚本

一 灭掉用户 killuser.sh #!/bin/sh # The script to kill login user user_name="$1" /bin/ps aux | /bin/grep $user_name | /bin/awk `{ print $2 }` > /tmp/temp.pid kill_id=`cat /tmp/temp.pid` for PID in kill_id do /bin/kill -9 $PID 2> /dev/null done

shell编程:定义简单标准命令集

shell是用户操作接口的意思,操作系统运行起来后都会给用户提供一个操作界面,这个界面就叫shell,用户可以通过shell来调用操作系统内部的复杂实现,而shell编程就是在shell层次上进行编程,如Linux中的脚本编程. shenll运行原理:由消息接收.解析.执行构成的死循环. 命令行shell:该死循环包含3个模块(命令接收.命令解析.命令执行),命令行有一个标准命令集,用户输入的命令若不是标准命令,则提示用户这不是一个合法命令行,然后重新回到命令行让用户输入下一个命令. 常见的sh

【转】Shell编程

原文链接: Shell编程  打算有时间简单了解shell编程 1.shell结构 一个简单的例子: [[email protected] shell]# vi example #!/bin/sh #This is show what a example looks like. echo "my first shell example." echo # this inserts an empty line in output. echo "We are current in

shell编程快速入门

shell编程:对于hadoop程序员,通常需要熟悉shell编程,因为shell可以非常方便的运行程序代码. 1.shell文件格式:xxx.sh #!/bin/sh ---shell文件第一行必须这么写#井号后面的内容是注释echo 'abcd' ----echo是输出,回显 在hadoop0:mkdir shellfilecd shellfilelsvi test.sh #!/bin/sh echo 'abcd'lslltset.sh ---现在执行发现没有权限,需修改权限才能执行chmo

linux shell编程入门笔记

shell编程的重要性: 对于hadoop程序员,通常需要熟悉shell编程,因为shell可以非常方便的运行程序代码. shell文件格式: 文件名后缀通常是.sh #!/bin/sh[先指定文件下面用的是哪一个sh] #这里是注释 shell中的变量: (1)变量不需要声明,初始化不需要指定类型 (2)变量名称只能有字母.数字.下划线组成,不能使用数字开头 (3)分类: 临时变量 环境变量 (export) 显示变量值使用echo命令 ,加上变量名对于变量引用,也可以使用{变量名} 示例程序