1、一维数组

  定义:A={test1 test2 test3}

  引用:echo ${A[0]} 表示引用第一个数组变量 echo ${A[1]} 表示引用第二个数组变量

  显示数据参数:echo ${A[@]}  显示参数个数 echo ${#A[@]}

  替换数组元素test2换成test5 ->echo ${A[@]/tets2/test5}

2、sed命令

  1)sed 's/192.10/192.168/g' test.txt  ->预修改test.txt中192.10变成192.168,但是test.txt依旧是192.10,只是预替换。

     其中格式为's/old/new/g',格式中s表示找到全部的old。真正替换为sed -i 's/192.10/192.168/g' test.txt。

  2)sed 's/^/&A/g' test.txt 表示在test.txt中每一行首添加A,其中^表示行首,&表示添加,$表示行尾。

  3)sed '/hdc/a 520' test.txt 表示在text.txt中的hdc后添加一行520。

     sed '/hdc/i 520' test.txt 表示在text.txt中的hdc前添加一行520。

  4)sed -n '/hdc/p' test.txt 表示打印hdc所在的行,其中n表示打印,p表示输出print。

     sed -n '1p' test.txt 打印第一行。

     sed -n '1,2p' test.txt 打印第一,二行。

3、grep命令

  grep "^10" test.txt 在当前目录中的test.txt文件中查找以10开头的行

  grep "$11" test.txt 在当前目录中的test.txt文件中查找以11结尾的行

  cat test.txt | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" 匹配ip地址如172.168.25.3

  egrep "hdc|123" test.txt 在当前目录中的test.txt文件中查找hdc或者123的行

4、awk命令

  cat /etc/passwd | awk -F: '{print $1}' 其中-F:表示以:来切割(区分列)

  ifconfig eth1 | grep "Bcast"  | awk '{print $2}'

  提取网卡eth1中的IP地址:ifconfig eth1 | grep "Bcast" | awk '{print $2}' | sed 's/addr://g'

              ifconfig eth1 | grep "Bcast" | awk '{print $2}' | awk -F:'{print $2}'

5、find命令

  格式:find 目录 -name "test.txt" 后面可接命令

    find . -name "test.txt" 寻找当前目录中test.txt文件

    find . -maxdepth 1 -name "test.txt" 寻找当前目录中第一级目录的test.txt文件     

   

    find -size +20 寻找大小大于20MB的文件

    

shell编程基础知识2的更多相关文章

  1. shell编程基础知识

    什么是shell shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户 shell对话方式 交互的方 ...

  2. Shell编程基础知识(一)

    一.基本的运行Linux程序的3种方法: (1) 使文件具有可执行权限,直接运行文件.eg:  chmod a+x testfile.sh   ./testfile.sh (2) 直接调用命令解释器来 ...

  3. shell编程基础知识3

    1.Linux下scp的用法 scp就是secure copy,一个在linux下用来进行远程拷贝文件的命令.有时我们需要获得远程服务器上的某个文件,该服务器既没有配置ftp服务器,也没有做共享,无法 ...

  4. SHELL脚本编程基础知识

    SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...

  5. Shell编程(二)——shell的基础知识及常用命令

    shell的基础知识 一.bash有以下特点: 1.记录命令历史 2.指令和文件名补全 3.别名 alias rm='rm -i' 4.通配符 * 0个或多个字符 ?​匹配一个字符 5 输入输出重定向 ...

  6. 【转】Shell编程基础篇-上

    [转]Shell编程基础篇-上 1.1 前言 1.1.1 为什么学Shell Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, Linux/UNIX系统的底层及基础应 ...

  7. TCP与UDP比较 以及并发编程基础知识

    一.tcp比udp真正可靠地原因 1.为什么tcp比udp传输可靠地原因: 我们知道在传输数据的时候,数据是先存在操作系统的缓存中,然后发送给客户端,在客户端也是要经过客户端的操作系统的,因为这个过程 ...

  8. 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!

    http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...

  9. 什么是Shell?Shell脚本基础知识详细介绍

    这篇文章主要介绍了什么是Shell?Shell脚本基础知识介绍,本文是一篇Shell脚本入门文章,在本文你可学到什么是Shell.有多少种Shell.一个Shell脚本代码实例,需要的朋友可以参考下 ...

随机推荐

  1. UE4开发PSVR游戏流程

    先与sony的开发者关系部建立联系,展示工作室/公司制作PSVR游戏的构想和计划以及制作实力,如果对方觉得你提供的信息具有说服力,则会提供开发者资格,和你签署NDA,给你租借开发机和测试机(免费). ...

  2. 关于Calendar和Reminder(日历和提醒)编程指南

    Event Kit框架使你能访问用户的Calendar.app和Reminders.app信息.虽然这是两个不同的app,但是他们使用相同的框架处理数据.类似地,存储这些数据的数据库,被称为日历数据库 ...

  3. sqlalchemy.exc.NoForeignKeysError:Can't find any foreign key relationships between

    这句话的意思是,两张表之间的外键找不到,首先看看外键设置正确了没,如果外键没问题,看看是不是_tablename_设置了没,就是再model中,定义类的时候,表格名称要_tablename_设置一下, ...

  4. ArcGIS API for JavaScript(4.x)-加载天地图

    ArcGIS API for JavaScript(3.x)如何加载天地图<ArcGIS API for Javascript 加载天地图(经纬度投影) - 张凯强 - 博客园>这篇文章已 ...

  5. 138、Tensorflow serving 实现模型的部署

    将Tensorflow模型部署成Restful接口 下面是实现过程,整个操作都是在Linux上面实现的,因为Tensorflow Serving 目前还只支持Linux 这个意义真的是革命性的,因为从 ...

  6. 测开之路八十二:匿名函数:lambda表达式

    # 匿名函数:lambda表达式# lambda 参数: 逻辑f = lambda name: print(name)f('tom') f2 = lambda x, y: x + yprint(f2( ...

  7. Android深度探索-卷1第七章心得体会

    创建LED驱动的设备文件 第一步:使用cdev_init函数初始化cdev 第二步:指定设备号.直接在代码指定或动态分配 第三步:使用cdev_add函数将字符设备添加到内核中的字符设备数组中 第四步 ...

  8. Git011--分支管理策略

    Git--分支管理策略 一.分支管理策略 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,G ...

  9. 网页导出excel

    package site.action.ecom.backend.wechat.exportExcel; import java.lang.annotation.Documented;import j ...

  10. <搬运> SQL语句百万数据量优化方案

    一:理解sql执行顺序 在sql中,第一个被执行的是from语句,每一个步骤都会产生一个虚拟表,该表供下一个步骤查询时调用,比如语句:select top 10 column1,colum2,max( ...