1、正则表达式

    1)^开始  *前一个字符重复0次以上

           +       1次以上

           ?        0次或者1次

          .  一个任意字符(.*连用)

          {m,n}      m到n次

          [0-9][a-z]    任意数字或字母

      $结束字符

    2)sed和awk命令

        sed '匹配条件/执行的动作' /etc/passwd  sed 's/old/new/g'

        awk -F: '{print $1}' /etc/passwd    1表示第一列,2表示第二列  -F:表示分隔符为:

2、变量

    1)环境变量  系统环境变量(/etc/profile)  用户环境变量(/home/用户名/.bash_profile)

        set查看

    2)位置变量  $0-9

        $0  脚本名称

        $1-9  位置参数

    3)预定义变量

        $!  后台运行的最后一个进程的PID号

        $?  程序退出的代表(0成功)

        $*  所有参数的内容

        $$  当前进程的ID号码

        $#  当前shell的参数个数

        $@  所有参数内容(逐个读取)

    4)自定义变量

        name=[value]  ps:等号两边不能有空格,变量名对大小敏感

        $变量名  取值

3、算术运算

    + - * / %

    $((表达式))

    $[表达式]

    expr expression  expr 5 + 2  变量间有空格

4、内置测试判断

    Test 测试表达式

    [ 测试表达式 ]  ps:测试表达式与[]间一定有空格

    数值比较    

      -lt  小于  ex:test &a -lt &b  echo $?

      -gt  大于

      -eq  等于

      -ne  不等于

      -le  小于等于

      -ge  大于等于

    字串测试

      =  等于

      !=  不等于

      -z 字串  字串长度伪(为0)则真

      -n 字串  字串长度不伪则真

    文件测试

      -e 文件名  文件存在则真

      -r 文件名  文件存在且可读为真

      -w 文件名  可写

      -x 文件名  可执行

      -s 文件名  文件中至少存在一个字符

      -d 文件名  文件存在且为目录

      -f 文件名  文件存在且为普通文件

    !(非)>>-a(与)>>-o(或)

5、命令间的逻辑符合

    &&  逻辑与

      cmd1 && cmd2  cmd1执行成功才执行cmd2

    ||  逻辑或

      cmd1 || cmd2  cmd1失败了才执行cmd2

    ;  无逻辑关系

6、常用命令

    date -s "2016-04-12 15:20:13"  修改系统时间

    date '+Y%m%d'  按照年月日格式输出系统时间

    date -d '7 day ago' '+Y%m%d'  输出7天前的时间

7、取字符串

    ${变量名:offset:length}       echo ${a%.*}

8、书写规范

    #!/bin/bash    声明运行环境

    运行方式    a.赋予权限直接运行

            b.通过运行环境运行  bash 1.sh  sh 1.sh

            c.  . 1.sh  source 1.sh

9、控制语句

    1)for语句

        a.  for 变量 in 值1 值2...值N    变量依次取值1...值N

            do

            命令集合          {1..50}  `seq 50`  取值1到50

            done

        b.  for((初始化变量;结束循环条件;变量运算))

    2)while循环

        a.  while [ 条件 ]        let i=i+1---i=$[i+1]  i自增1

        b.  while read -r line

            do

            echo $line

            done < /etc/passwd      从路径中逐行读取并赋值给line

    3)if语句

        if 条件

        then

          命令序列

        elif 条件

        then  

          命令序列

        else

          命令序列

        fi

    4)case语句

        a.  case $变量名称 in

            条件1)

                  命令序列

                  ;;

            条件2)

                  命令序列

                  ;;

            *)                  以上都不满足

            esac

10、函数

    a.  name(){

        命令序列

        }

    b.  function name{

        命令序列

        }

11、计划任务

    1)一次性计划任务

      at 时间        ctrl+d结束输入

      at -l  列出当前计划任务

    2)周期性计划任务  service crond start(status,restart)

        a.开机自启动

            chkconfig --list  列出系统服务是否开机自启动(3和5)

        b.制定计划任务内容

            crontab -e(ENTER)  >>  进入vi命令

            时间和命令  分 时 日 月 周(没有用*代替  -表示连续时间  ,表示若干不连续时间  /表示间隔时间) cmd命令    */10 * * * * ntpdate 时间服务器IP 每10分钟同步一次时钟

        c.重启服务  service crond restart

Linux shell编程命令-Linux基础环境命令学习笔记的更多相关文章

  1. 《Linux.Shell编程从入门到精通》读书笔记

    第一章 第一个Shell程序 以 #!解析器名称 开头,表示选择哪个解释器解释shell脚本 source命令 export命令 env命令 unset命令 第二章 shell编程基础 函数传递 标准 ...

  2. Linux Shell编程(21)——复杂命令

    更高级的用户命令find-exec COMMAND \;在每一个find 匹配到的文件执行 COMMAND 命令. 命令序列以 ; 结束( ";" 是 转义符 以保证 shell ...

  3. Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||

    https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...

  4. Linux Shell脚本入门--cut命令

    Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields &l ...

  5. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  6. Linux shell下30个有趣的命令

    Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...

  7. linux —— shell 编程(文本处理)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 基本文本处理 流编辑器sed aw ...

  8. linux —— shell 编程(编程语法)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...

  9. Linux Shell编程参考大全

    本文记录Linux Shell编程中常用基本知识,方便快速入门以及查询使用. 本文主要分为以下几个部分: 一.Shell中的变量 任何编程语言中,有关变量的定义,作用范围,赋值等都是最最基础的知识. ...

  10. Linux Shell编程与编辑器使用详解

    <Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...

随机推荐

  1. mysql 先分组在排序

    mysql语句的语法模板: select distinct <select_list> from <left_table><join_type> join < ...

  2. html统计

    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8&quo ...

  3. 串口调试者v2.1------开源c#串口调试工具

    第一步:上图 第二步:上代码 >>>>>>>>>>>源代码下载<<<<<<<<< ...

  4. Android短视频SDK转码实践

    一. 前言 一些涉及的基本概念: 转码:一般指多媒体文件格式的转换,比如分辨率.码率.封装格式等: 解复用(demux):从某种封装中分离出视频track和音频track,然后交给后续模块进行处理: ...

  5. String源码图

    String StringBuffer StringBuilder 均为对字符数组的操作. 实现了不同的接口,导致不同的覆写. 实现了同样的接口,适应不同的场景.

  6. hashCode花式卖萌

    声明:这篇博文纯属是最近看源码时闲着没事瞎折腾(好奇心驱动),对实际的应用程序编码我觉得可能没有那么大的帮助,各位亲就当是代码写累了放松放松心情,视为偏门小故事看一看就可以了,别深究. 一.从Obje ...

  7. SSIS 实用表达式部分总结

    下面,列出一些实用的表达式: 1,路径取文件名 RIGHT([FilePath],FINDSTRING(REVERSE([FilePath]),) - ) RIGHT(@[User::FilePath ...

  8. vue基础学习(二)

    02-01  vue事件深入-传参.冒泡.默认事件 <div id="box"> <div @click="show2()"> < ...

  9. Struts2-整理笔记(二)常量配置、动态方法调用、Action类详解

    1.修改struts2常量配置(3种) 第一种 在str/struts.xml中添加constant标签 <struts> <!-- 如果使用使用动态方法调用和include冲突 - ...

  10. Java禁止浏览器有缓存的源码

    Java禁止浏览器有缓存的源码 import java.io.IOException; import javax.servlet.Filter; import javax.servlet.Filter ...