zoukankan      html  css  js  c++  java
  • LinuX操作系统基础------>Shell基础编程

    • 案例Shell概述
    • Shell变量设置
    • Shell脚本中的逻辑判断
    • Shell脚本中的循环

      Shell概述:

        Shell是LinuX系统组成的重要部分之一,本质是一个用C语言编写的程序,他接受用户输入的命令把它送入内核去执行,是一个命令解释器。

      Shell脚本解释器的分类:  cat  /etc/shells  来查看

    • /bin/sh
    • /bin/bash
    • /sbin/nologin
    • /bin/tcsh
    • /bin/csh

      1.创建新的Shell脚本:vi/vim   脚本名称 . sh(脚本后缀名是.sh)

    1. #! /bin/bash                           指定脚本解释器
    2. #! filename:+脚本名字              脚本名字
    3. #! function:+功能                       脚本功能
    4. #! writen  by   作者   时间               脚本作者和时间

      echo命令

      •   语法格式:echo 【选项】【输出内容】
      • 参数选项:-e  支持反斜线控制的字符转移
      • 字符转移:          

       2.执行脚本:

      •   方法一:直接输入脚本文件的绝对路径或者相对路径
      •        方法二:bash + 脚本名称

       3.修改脚本文件的权限:  chmod  +x(需要的权限)  脚本名称

       4.Shell变量:

          变量:是Shell传递数据的一种方式当Shell脚本需要保存一些信息时,入一个文件名或一个数字,就可以把它存储在一个变量中。

          变量的分类:

    1. 局部变量:仅在当前Shell中有效,其他的Shell程序不能访问局部变量
    2. 环境变量:可以在当前Shell和这个所有子Shell当中生效
    3. 可以使用set命令来查看变量,使用unset命令删除变量
    • 变量名称可以由字母,数字,下划线组成,但是不能以数字开头
    • 环境变量名建议大写,便于区分
    • 变量名用等号连接值,等号左右两侧不能有空格

       5.变量的定义:

      •   语法格式:变量名=值

       6.变量的叠加:

      •    第一种:是用双引号包裹$符号和变量名
      •            第二种:是在$符后使用大括号将变量名包裹起来

       7.Read命令:Shell脚本还可以和用户进行交互使用

      •   语法格式:read -p    脚本语句
      • 在进行计算结果的时候要用  []  包裹起来,并在外面加上$符号

        8.特殊符号的作用:

       9.测试表达式:

    1. test -e /root/t1.sh
    2. [ -e /root/t1.sh ]         字符两边要加上空格否则报错

       10.文件测试操作符

    常用测试操作符

    说明

    -d 

    文件存在,且为目录,则为真

    -f

    文件存在,且为普通文件,则为真

    -e

    文件(普通文件或目录),存在则为真

    -w

    文件(普通文件或目录)存在,且可写,则为真

    -r

    文件(普通文件或目录)存在,且可读,则为真

    -x

    文件(普通文件或目录)存在,且可执行,则为真

    -n

    字符串长度不为0,则为真

       10-1案例:用两种测试表达式来分别测试下root目录下是否存在文件

     

        11.单分支语句:

      •   if条件语句都是以if开头,并且有tnen  最后fi 结尾

     

       11-1案例:用单分支if语句来判断root目录下是否存在test目录如果存在就输出语句

       11-2案例:用单分支进行判断root目录下是否存在/root/a/b/a/c如果没有输入确定

        12.双分支if语句:

       12-1案例:用双分支if判断root目录下的aaa.txt文件是否有执行权限有就重命名没有则添加权限

        13.多重分支if语句:

        12-1案例

        13.case语句:

        13-1案例

       14.while循环

       14-1案例

  • 相关阅读:
    我的数学之美(一)——RANSAC算法详解
    机器学习经典算法之-----最小二乘法(zz)
    基于大数据的餐饮推荐系统总结
    Hive 数据错位修复方案
    Python 2.x 判断 Excel 是否包含指定的 sheet
    Shell脚本判断目录是否为空
    MySQL启动报错 The server quit without updating PID file 解决方案
    DolphinScheduler 1.3.2集群版(基于CDH5.13.1)安装手册
    添加 Shell 脚本的启动用户限制
    CentOS 7 离线安装 MySQL 5.7
  • 原文地址:https://www.cnblogs.com/wyk1/p/13449389.html
Copyright © 2011-2022 走看看