shell编程基础知识2
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的更多相关文章
- shell编程基础知识
什么是shell shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户 shell对话方式 交互的方 ...
- Shell编程基础知识(一)
一.基本的运行Linux程序的3种方法: (1) 使文件具有可执行权限,直接运行文件.eg: chmod a+x testfile.sh ./testfile.sh (2) 直接调用命令解释器来 ...
- shell编程基础知识3
1.Linux下scp的用法 scp就是secure copy,一个在linux下用来进行远程拷贝文件的命令.有时我们需要获得远程服务器上的某个文件,该服务器既没有配置ftp服务器,也没有做共享,无法 ...
- SHELL脚本编程基础知识
SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...
- Shell编程(二)——shell的基础知识及常用命令
shell的基础知识 一.bash有以下特点: 1.记录命令历史 2.指令和文件名补全 3.别名 alias rm='rm -i' 4.通配符 * 0个或多个字符 ?匹配一个字符 5 输入输出重定向 ...
- 【转】Shell编程基础篇-上
[转]Shell编程基础篇-上 1.1 前言 1.1.1 为什么学Shell Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, Linux/UNIX系统的底层及基础应 ...
- TCP与UDP比较 以及并发编程基础知识
一.tcp比udp真正可靠地原因 1.为什么tcp比udp传输可靠地原因: 我们知道在传输数据的时候,数据是先存在操作系统的缓存中,然后发送给客户端,在客户端也是要经过客户端的操作系统的,因为这个过程 ...
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...
- 什么是Shell?Shell脚本基础知识详细介绍
这篇文章主要介绍了什么是Shell?Shell脚本基础知识介绍,本文是一篇Shell脚本入门文章,在本文你可学到什么是Shell.有多少种Shell.一个Shell脚本代码实例,需要的朋友可以参考下 ...
随机推荐
- Charles抓取https
步骤一:将Charles的根证书(Charles Root Certificates)安装到Mac上. Help -> SSL Proxying -> Install Charles Ro ...
- Skyline(6.x)-二次开发手册使用技巧
毕业设计选择 Skyline 的 Web 端二次开发,由于以前没有接触过 ActiveX 控件的使用,二次开发手册是英文的读起来有点吃力,并且 IE 直接控制台输出 ActiveX 控件创建的对象看不 ...
- Vue.js的列表数据的同步更新方法
这次给大家带来Vue.js的列表数据的同步更新方法,Vue.js列表数据同步更新方法的注意事项有哪些,下面就是实战案例,一起来看一下. 数组的 push(),pop(),shift(),unshift ...
- java.lang.IllegalArgumentException: object is not an instance of declaring class新发现
文章目录 背景 报错 解决 引申 背景 因为要将方法缓存起来提高性能 报错 java.lang.IllegalArgumentException: object is not an instance ...
- Selenium WebDriver Log4j打印执行日志
在自动化测试脚本的执行过程中,使用log4j在日志文件中打印执行日志,用于监控和后续调试脚本. Log4j.xml 文件 <log4j:configuration xmlns:log4j=&qu ...
- redis为什么内存不宜过大
redis的高性能.稳定性都是不用怀疑的,但如果redis塞入数据过多,内存过大,那如果出问题,那它可能会给我们的就是灾难性的. 1 主库宕机 主库宕机,常见的策略为“切主”.具体为从该集群剩余从库中 ...
- Rust SDL2配置
github地址 https://github.com/Rust-SDL2/rust-sdl2 clone或下载这个项目 本文使用的是MSVC版本 上面链接页面搜Windows (MSVC) 得知需要 ...
- for in 和for of的区别
for in 和for of的区别:https://www.jianshu.com/p/c43f418d6bf0 1 遍历数组通常用for循环 ES5的话也可以使用forEach,ES5具有遍历数组功 ...
- mysql的相关命令行操作命令
一:有关mysql的命令 转载来源:https://www.cnblogs.com/opsprobe/p/9126864.html 1 查看有没有安装mysql dpkg -l | grep mysq ...
- Day3---Python的time库的一些简单函数以及用法
time库的一些函数 time.time () : 获取当前时间戳,即计算机内部时间值,浮点数 >>>import time >>> time.time() 1 ...