Shell基础:常用技巧&重定向&管道操作
Shell脚本介绍和常用工具
- Shell脚本
- Shell脚本:实际就是windows里的批处理脚本,多条可一次执行的Shell命令集合。Linux上的脚本可以用很多种语言实现,bash shell是比较简单的一种,更高阶的可以用其他脚本语言,比如Python。
- Shell脚本对系统的管理能力非常强大,甚至可以使用Shell结合php实现Web管理Linux系统功能:可以自己写一个Web页面(示例:基于Php),对系统进行管理,包括查看删除用户,配置网络,发送邮件,重启系统,一键备份,一键搭建服务器。
- 搭建一个高效的Shell脚本开发环境(putty+winscp+sublime)
- 敲命令直接用putty,免得在虚拟机里挪动来挪动去,鼠标识别影响速度。
- 如果开发脚本建议用winscp+sublime实现脚本的开发。Sublime开发Html或是脚本都非常快,可以学习一下Sublime, 被称为业界的开发神器,补全功能非常强大。
常用Bash命令加速操作
- Tab键自动补全: 非常有用
- 命令历史 history:history/ !(命令行数) 或者是!匹配符
- (!vi 会调用历史中最后一条以vi开头的命令)
- (!5 会调用历史中的第五条命令)
- 命令别名
- (alias 列出当前别名)
- (alias 别名=‘linux 命令’)
- (unalias 别名, 取消别名)
- (永久保存命令别名需要去更改用户根目录(/root/.bashrc)下.bashrc文件)
- 输出重定向(把命令的结果不显示在屏幕上,而是现实在特定的区域)
- 命令 > 重定向的文件,覆盖式重定向(ifconfig eth0 > test.txt: 把eth0网卡的情况输入到当前目录下test.txt文件中)
- 命令>>重定向文件,追加式重定向(ifconfig eth0>> test.txt:把eth0网卡的情况输入到当前目录下test.txt文件中)
- 命令 2> 重定向文件(aaaa 2>test.txt:把错误命令输入到test.txt中,没有写数字默认为1>,表示把正确结果写入文件。如果特别标明2>, 表示把错误结果写入test.txt)
- 命令 &> 重定向文件 (bash test.sh &> all.txt,把脚本正确和错误的结果都重定向到all.sh文件当中)
- 追加重定向,把错误的结果沿着1的通道追加到test.txt文件中(bash test.txt 1>>all.txt 2>&1)
- 管道操作(|,把左边的输出作为右边的输入)
- 使用管道查看mem内存的情况 (eg:free -m|grep -i mem)
- | 管道可以在一条命令里多次使用(eg:查看可用内存情况 free -m|grep -i mem|awk '{print $4}')
Shell基础:常用技巧&重定向&管道操作的更多相关文章
- shell脚本常用技巧
shell脚本常用技巧 1.获取随机字符串或数字 ~]#echo $RANDOM | md5sum | cut -c 1-6 ~]#openssl rand -base64 4 | cut -c 1- ...
- [shell基础]——I/O重定向
文件标识符(FD) 1. Linux使用文件标识符(FD)来标识一个进程正在访问的特定文件 2. 当打开一个文件或创建一个文件时,Linux将返回一个文件标识符供其他操作引用 3. 文件标识符是一个小 ...
- Shell基础、输入输出重定向
1.Shell的功能: (1)Shell是命令解释器,把我们写的命令转化为内核能够识别的机器语言,然后内核调用硬件来完成相应的操作.操作完成后,内核操作结果返回给内核,Shell再将机器语言翻译为我们 ...
- shell编程常用的截取字符串操作
1. 常用的字符串操作 1.1. 替换字符串:$ echo ${var/ /_}#支持正怎表达式 / /表示搜索到第一个替换,// /表示搜索到的结果全部替换. ...
- shell基础--字符串和变量的操作
一.统计字符串长度 1.wc –L [root@~_~day4]# echo "hello" | wc -L 5 2.expr length string [root@~_~day ...
- shell基础:输入输出重定向
输出重定向将命令输出存入到文件,类似日志.便于查看.2和>>间没空格.但这种方法没用 ,命令执行时并不知道对错. /dev/null下的null就是一个垃圾箱,脚本中的一些命令并不需要保存 ...
- JavaScript常用技巧之时间操作
1.获取当前时间戳 +new Date Date.parse(new Date())
- JavaScript常用技巧之数组操作
1.获取最后数组中最后一个元素 . arr.slice(-1).pop() . arr[arr.length - 1] 2.过滤重复元素 arr.filter(function(v, i) { ret ...
- JavaScript常用技巧之字符串操作
1.首字母大写 str.replace(/\b\w+/g, function (word) { return word.substring(0, 1).toLowerCase() + word.sub ...
随机推荐
- UE4编程之C++创建一个FPS工程(二)角色网格、动画、HUD、子弹类
转自:http://blog.csdn.net/u011707076/article/details/44243103 紧接上回,本篇文章将和大家一同整理总结UE4关于角色网格.动画.子弹类和HUD的 ...
- Quartz实用二三事
注意:本文项目使用的Quartz版本为2.2.1 一.关于Trigger Trigger tg = newTrigger().withIdentity("tg3", "g ...
- System.MissingMethodException: 找不到方法:
This is a problem which can occur when there is an old version of a DLL still lingering somewhere ar ...
- [数据结构与算法]栈Stack的多种实现
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 【CC评网】2013.第42周 话说时间管理
时间管理 工作几年之后,大家都会有意识的培养时间管理的概念:但如何真正做到位,并持续坚持,并不是一件容易的事: 虽然关注时间管理已有几年,但目前我对于时间的利用并不高效: 理论上的东西就是那些,但真正 ...
- 微信公众平台开发详细步骤与java代码
1.微信公众平台设置 首先在https://mp.weixin.qq.com/注册一个公众平台账号(服务号.订阅号.企业号的区别) 微信公众平台地址:https://mp.weixin.qq.com ...
- Codeforces Round #198 (Div. 2)
A.The Wall 题意:两个人粉刷墙壁,甲从粉刷标号为x,2x,3x...的小块乙粉刷标号为y,2y,3y...的小块问在某个区间内被重复粉刷的小块的个数. 分析:求出x和y的最小公倍数,然后做一 ...
- Spring security3
最近一直在学习spring security3,试着搭建了环境: 构建maven环境 项目配置pom.xml文件 <project xmlns="http://maven.apache ...
- SpringMVC后缀
<!-- 在这里,使用*.html为后缀的URL都能被baobaotao Servlet截获,进而转由SpringMVC框架进行处理.在 Struts框架中,一般将URL后缀配置为*.do:在w ...
- spring常用的工具类
spring给我们提供了很多的工具类, 应该在我们的日常工作中很好的利用起来. 它可以大大的减轻我们的平时编写代码的长度. 因我们只想用spring的工具类, 而不想把一个大大的spring工程给引入 ...