zoukankan      html  css  js  c++  java
  • shell编程01—shell基础

    01.学习shell编程需要的知识储备

    1.vi、vim编辑器的命令,vimrc设置

    2.命令基础,100多个命令

    3.基础、高端的网络服务,nfs,rsync,inotify,lanmp,sersync,sshkey批量分发管理

    02.shell脚本概念

    1.什么是shell

     shell是一个命令解释器,在操作系统的最外层,负责直接与用户对话,将用户的输入解释给操作系统,并输出操作系统各种各样的处理结果,输出到屏幕返回给用户。这种对话方式可与是交互式的(键盘输入命令,可以立即得到shell的回应),或者是非交互(脚本)的方式

    2.什么是shell脚本

     当命令或语句不在命令行中执行,而是通过一个程序文件执行时,该程序就被称为shell程序或shell脚本,shell程序类似Dos下的批处理程序(*.bat)

     用户可以在shell脚本中输入一系列的命令或语句。这些命令、变量流程控制语句等有机结合在一起就形成功能强大的shell程序

    3.示例

    #!/bin/bash
    echo "Hello World !"

    03.shell程序在运维工作中的地位

     shell擅长处理纯文本类型数据,linux中几乎所有配置文件、日志文件(nfs、rsync、httpd、nginx、lvs等)都是纯文本文件。shell脚本在linux中作用巨大

     

    04.shell脚本语言的种类和说明

    1.在unix/linux中主要有两大类

      Bourne shell (包括sh、ksh、bash):Bourne shell (sh),Kor n shell (ksh),Bourne  Again shell (bash),POSIX shell (sh)

      C shell (包括csh、tcsh):C shell,TENEX/TOPS C shell

    2.shell脚本语言是弱类型语言,定义变量的时候不需要指定类型,处理的时候如果定义的不对,就会报错。比如让字符串和整型数想加

    3.较为通用的shell有标准的Bourne shell(sh)和C shell,其中Bourne shell已被Bourne Again shell(bash)取代

    4.shell的优势在于处理操作系统底层的业务(大量命令为它支撑,2000多个命令都是shell支撑)

    05.常用操作系统的默认shell

     Linux 是 Bourne Again shell (bash)

     UNIX:Solaris、FreeBSD 缺省的是Bourne shell (sh),AIX 是Korn shell (ksh) ,HP-UX 是POSIX shell(sh)

     查看命令:echo $SHELL(系统变量都是全大写)

    06.shell脚本的建立和执行

     1.shell脚本(bash shell程序)通常是在编辑器(如vi/vim)中编写,由Unix/linux命令、bash shell命令、程序结构控制语句和注释等内容组成

     2.脚本开头第一行

     

     3.shell脚本的执行方式:

      1)作为可执行程序

      代码保存为test.sh,并cd到相应目录:

    chmod +x ./test.sh  #使脚本具有执行权限
    ./test.sh  #执行脚本

    注意,一定要写成./test.sh,而不是test.sh,运行其它二进制的程序也一样,直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./test.sh告诉系统说,就在当前目录找。

      2)作为解释器参数

    这种运行方式是,直接运行解释器,其参数就是shell脚本的文件名,如:

    /bin/sh test.sh

    这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。

  • 相关阅读:
    用asp自编源码制作动态的音乐播放页面
    VBS 连接数据库 样例
    VBS访问SQL数据库
    人人都应该知道的计算机网络协议(1)
    VBS 访问数据库 别人写的一份公共函数
    WPF DateTimePicker 和 TimeSpanPicker 控件发布
    实现Evernote的OAuth授权
    EvernoteTodo发布
    EvernoteAdage 发布
    关于 极限(Extreme)
  • 原文地址:https://www.cnblogs.com/xiaowenhui/p/4782138.html
Copyright © 2011-2022 走看看