zoukankan      html  css  js  c++  java
  • shell脚本

    1、命令解释器

    内核与用户之间的交互

     

    负责接收用户输入的操作指令并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。

    /etc/shells可以查看当前系统支持的shell脚本类型

    2、编程规范

    指定解释器的类型

    例:

     说明

    例:

     然后再写命令

    编写好一个shell脚本first.sh后是无法直接通过./first.sh来执行的,没有X权限

    但是可以通过指定某个shell来解释脚本语句,或者通过内部命令source(或点号”.”)来加载文件中的源代码执行。

     执行

    3、shell中常用的操作

    (1)搭配管道符操作

     其中$代表以/bin/bash结尾的 以某个字段开头可以"^root"

     awk -F: 是指以:分隔,没有这个参数则是默认的以空格分隔

    (2)搭配重定向操作

    举例:

     创建用户并设置密码

     

    -stdin

    标准输入

     

    可将输出内容输出到空文件 /dev/null (黑洞文件)中

    就不会提示

     

    4、脚本变量

    常见shell变量的类型包括自定义变量、环境变量、位置变量、预定义变量。

    set查看定义的变量

    unset 取消变量

    readonly 变量名 设置只读变量,unset不能删除只读变量

     

    定义新的变量并查看

     如果除了输出变量还要输出其他内容可用"{}"将变量括起来

     如果不加{}则会认为是abchaha这个变量

    (1)赋值变量特殊操作

    (a)""双引号

    界定字符串,特别是内容中有空格的时候

    (b)''单引号

    单引号中,任何字符均作为普通字符看待

    如单引号中要加单引号需要使用转义符

    (c)``反撇号

    一般在反撇号中写要执行的命令

     命令嵌套可使用$()

    (d)read命令

    用于变量赋值

    为多个变量赋值

     如果只有一个变量则将整行内容赋值给这个变量

    -p 显示提示信息 -t 持续多久时间

    (2)变量的作用范围

    默认情况下,新定义的变量只在当前的shell环境中有效,因此称为局部变量。当进入子程序或新的子shell环境时,局部变量将无法再使用。

     全局变量定义:

    (3)数值变量的运算

     

     

     注意:运算符前后要加空格

    2**3 :2的3次方

    5、特殊变量

    (1)环境变量

    env查看当前工作环境下的环境变量

    PATH="$PATH:/root"添加环境变量

    环境变量的全局文件为/etc/profile

    每个用户单独的配置文件在~/.bash_profile中

    (2)位置变量

    例:

     

    (3)预定义变量

     例:

    #!/bin/bash

    #

    T=date "+%Y%m%d-%H%M"

    TARFILE=beifen-${T}.tgz

    tar zcf $TARFILE $* &>/dev/null

    echo "已执行$0脚本"

    echo "共完成$#个对象的备份"

    echo "具体内容包括:$*"

    时间命令:date

    date +%F" "%T

     date +%Y%m%d

     

  • 相关阅读:
    15.Numpy之点乘、算术运算、切片、遍历和下标取值
    13.python-列表排序
    [Js-c++]c++中的指针、引用和数组名
    [Hadoop]Windows下用eclipse远程连接hdfs报错Connection denied解决方案
    [Java-JVM]Centos7编译openjdk7
    [Js-Java SE]Java中的Native关键字与JNI
    [Js-C++]C++中赋值表达式的结果
    [Js-C++].h文件与#include详解
    [Js-C++]C++中*&(指针引用)和*(指针)的区别
    [Js-Python]解决pip安装安装源速度慢的问题
  • 原文地址:https://www.cnblogs.com/zhuyunlong/p/11923320.html
Copyright © 2011-2022 走看看