zoukankan      html  css  js  c++  java
  • SHELL起步

    最近一直忙着面试,闲暇之余想看下SHELL和Perl编程,增加下自己的身价。

    SHELL和Perl的小语法点比较多,看了容易忘。所以我就一边写程序,一边巩固知识点吧。先从SHELL开始,先讲前面3章。Sriranga Veeraraghavan的《精通SHELL编程》的读书笔记。

    shell编程
    一、变量
    1变量的操作
    1.1标量变量
            name=value   FRUIT=peach
            带空格的变量值需要用引号引起来。
            访问变量 $echo $FRUIT
    1.2数组变量
            建立数组
            如果一个数组变量名和一个已经被定义了的标量变量名重名,那么标量变量的值就变成了数组变量中索引为0的值。
        ksh:   set -A name value1 value2 ... valueN
          bash:  name=(value1 ... valueN)      
          访问数组中的值
            ${name[index]}    ${name[*]}
            只读变量 readonly
            删除变量 unset name
    2环境和shell变量

    二、置换
    元字符是指在shell中具有特殊意义的字符。置换是指shell将包含字符的字符串根据其意义转换成新字符串的过程。
    1文件名置换
            shell将包含有通配元字符或通配符的字符串转换成一系列的文件名,这就是通配。
            通配元字符(通配符)  *匹配0个或多个任意字符 ?匹配1个任意字符 [characters]匹配给定的characters中的任何一个字符
            cmd [!chars]

    2变量置换
            高级变量置换:
                缺省值置换:${param:-word}
                缺省值赋值:${param:=word}
                空值错误:  ${param:msg}
                有值置换:  ${param:+word}

    3命令和算式置换
            命令置换使你能够获得命令的输出结果,算式置换能使你用shell完成简单的整数运算。
            命令置换 `command` 是反引号不是但引号
            算式置换 $((5/2))

    三、引用
            关闭对特殊字符含义的解析处理被称为引用(quoting),可以由以下3种方式来实现:
            \  ' "   
            >
            引用规则和场合
                引用处理忽略单词界限
                在命令中的引用处理组合
                在单一参数中内嵌多个空格
                引用处理换行以在下一行中继续
                引用处理以访问包含特殊字符的文件名
                引用处理正则表达式通配符
                引用处理反斜杠以启用echo转义序列
                引用处理通配符以适应cpio很find

  • 相关阅读:
    【PAT】B1041 考试座位号(15 分)
    【PAT】B1042 字符统计(20 分)
    【PAT】B1044 火星数字(20 分)
    LeetCode 3Sum Closest
    一定要做的事(备忘)
    LeetCode Integer to Roman
    Container With Most Water
    LeetCode ZigZag Conversion
    LeetCode 5 最长回文子串 Manacher线性算法
    LeetCode Longest Substring Without Repeating Characters
  • 原文地址:https://www.cnblogs.com/junzhkevin/p/2196193.html
Copyright © 2011-2022 走看看