1.19 学习札记

摘要:anaconda  shell数组  字符串截取                       

 

 

linux安装
anaconda,红帽企业版linux安装程序
  第一阶段:开始安装
           包含安装程序内核及initrd.img;可以从任意支持的引导程序开始。此阶段的任务主

要是:初始化安装程序;解析命令行参数;自动检测硬件;装载附加的驱动程序;选择语言、键盘

布局和安装方法,如果按住那个需要,请设定联网。
        引导介质:boot.iso或cd/dvd;包含bootimg.img的usb盘;使用pxe进行网络引导;其他

引导程序,比如GRUB。
        安装方法:本地光驱,硬盘,NFS映像,FTP,HTTP
Kickstart  根据脚本进行安装的方法;支持所有Anaconda特性;安装时自动生

成/root/anaconda-ks.cfg.
 详解kickstart文件
    命令部分:配置系统
    %package部分:为安装选择软件包和组
    脚本部分 :定制系统的可选择部分;在安装前运行%pre脚本;在安装后运行%post脚本
            shell数组
Bash中,数组变量的赋值有两种方法:

  (1) name = (value1 ... valuen) 此时下标从0开始

  (2) name[index] = value

  下面以一个简单的脚本来说明,脚本内容如下:

  #!/bin/bash

  #定义数组

  A=(a b c def)

  #把数组按字符串显示输出

  echo ${A[@]}

  #屏幕显示:a b c def

  #数组的长度表示${#A[*]}

  len=${#A[*]}

  echo ${#A[*]}

  #屏幕显示:4

  #改变数组元素的值

  A[3]='vivian'

  echo ${A[*]}

  #屏幕显示:a b c vivian

        字符串截取
${varible##*string} 从左向右截取最后一个string后的字符串
${varible#*string}从左向右截取第一个string后的字符串
${varible%%string*}从右向左截取最后一个string后的字符串
${varible%string*}从右向左截取第一个string后的字符串
“*”只是一个通配符可以不要

例子:
$ MYVAR=foodforthought.jpg
$ echo ${MYVAR##*fo}
rthought.jpg
$ echo ${MYVAR#*fo}
odforthought.jpg

${varible:n1:n2}:截取变量varible从n1到n2之间的字符串。

可以根据特定字符偏移和长度,使用另一种形式的变量扩展,来选择特定子字符串。试着在 bash

中输入以下行:
$ EXCLAIM=cowabunga
$ echo ${EXCLAIM:0:3}
cow
$ echo ${EXCLAIM:3:7}
abunga

这种形式的字符串截断非常简便,只需用冒号分开来指定起始字符和子字符串长度。