shell应用技巧
Shell 应用技巧
Shell是一个命令解释器,是在内核之上和内核交互的一个层面。

Shell有很多种,我们所使用的的带提示符的那种属于/bin/bash,几乎所有的linux系统缺省就是这种shell,很方便做一些管理,通常使用这种shell。
bash应用技巧
命令补齐
命令补齐允许用户输入文件名或命令名起始的若干个字母后,按<Tab>键补齐文件名,命令名,若以此开头的文件名或命令名不唯一,则按一下tab键没反应,按第二下列出所有。若唯一则直接补全。
命令历史
命令历史允许用户浏览先前输入的命令并重新调用他们,用history命令可以显示命令列表,!+命令数字可执行,按方向键 ↑和↓可以找到以前执行过的命令
Clear清屏 ctrl+l(快捷键)
Ctrl+u 删除光标前所有字符

命令别名
命令别名定义:
范例:alias copy=cp
alias xrm=“rm -r”
命令直接写,有选项参数的带双引号
查看别名信息:alias
删除别名信息:unalias copy
可以使操作更简单容易
alias直接列出别名
每个用户自己定义的别名只能自己使用。
输入/输出重定向
同标准I/O一样,shell对于每一个进程预先定义3个文件描述字(0,1,2,)。分别对应于:
0 (STDIN) 标准输入 键盘
1 (STDOUT)标准输出 显示器
2 (STDERR)标准错误输出 显示器
重定向表示输入不是从键盘,输出不是从显示器,标准错误输出不是从显示器
>或>> 输出重定向
范例:ls -l /temp>/tmp.msg 重定向到根目录下tmp.msg中
Date >> /tmp.msg
错误输出重定向
范例:cp -R /usr/backup/usr.bak 2>/bak.error
所谓重定向,就是把原本显示在显示器上的内容输出到文件中。
date查看系统当前时间
>会将文件内容清空,这可能不是我们想要的。
于是我们可以用>>可以追加
输入重定向是指不是从键盘输入,而是从其他地方输入
错误输出重定向
范例:cp -R /usr/backup/usr.bak 2>/bak.error
Usr(unix系统资源,十分重要,有时需要备份,此条命令执行备份,若出错将2写入bak.error,成功什么都不做)
2是什么鬼?
其实0> 0>> 1< 这是输入,输出重定向的标准写法,0,1都可省略。
2> 此时2不可省略,若省略则和输出重定向一样了
管道
管道:讲一个命令的输出传送给另一个命令,作为另一个命令的输入
使用方法:命令1|命令2|命令3.....|命令n
范例:
ls -l /etc | more 分页浏览前边命令执行的结果,空格翻页,回车翻行,q退出
ls -l /etc | grep init 提取与关键词相关的行,并将其列出来
ls -l /etc | grep init | wc -l 在目录etc下包含init的文件有多少个
管道的作用就是让几个简单的命令发挥很大的作用
wc -l 文件名 显示此文件有多少行
命令连接符
;
用;间隔的各命令按顺序依次执行,比如在写系统的计划任务时,让几个命令在后台依次执行。编译内核时就是敲那几个命令,几个命令间隔时间长,此时便可用;使之依次执行,再加个错误判断,将错误写到日志里。
&&
Command1 && comand2
成功 执行
失败 不执行
前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,它后面的命令才被执行
||
Command1 || command2
成功 不执行
失败 执行
前后命令的执行存在逻辑或关系,只有||前面的命令执行失败后,他后面的命令才被执行
命令替换符
命令替换:讲一个命令的输出作为另一个命令的参数
格式为:命令1 ‘命令2’(键盘数字一左边的小撇)
范例:ls -l ‘which touch’
shell应用技巧的更多相关文章
- 【shell 大系】Linux Shell常用技巧
在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...
- Shell 小技巧
Shell 小技巧 ${} 的使用 截断变量 去掉左边 使用 # (最短匹配)或 ## (最长匹配)方法为 ${var#<模式>} var=DUMMY echo ${var#*M} # M ...
- Linux Shell常用技巧(目录)
Linux Shell常用技巧(一) http://www.cnblogs.com/stephen-liu74/archive/2011/11/10/2240461.html一. 特殊文件: /dev ...
- Linux常用命令(第二版) --Shell应用技巧
Shell应用技巧 小技巧: 1.命令补全功能: <Tab>键 2.清屏: Ctrl+l 3.删除光标前所有内容: Ctrl+u 4.命令历史记录: history 这时: !histo ...
- Shell 常用技巧
Shell 常用技巧 echo $RANDOM | cksum | cut -c - openssl rand -base64 | cksum | cut -c - date +%N | cut -c ...
- 6条shell小技巧,让脚本显得不再业余【转】
如何能让自己的shell显得不那么业余?下面6点实践一定有用. 画外音:本篇文章源自Google的一篇实践,抽取了部分1分钟能读完的内容,加入了一些分析. 一.以下面的语句开场 set -o noun ...
- Linux_CentOS常用命令和shell命令技巧
Linux_CentOS常用命令 关机 init 重启 init 列出当前目录的下的文件 ls //列出当前目录下的文件 ll //列出当前目录下的文件信息 等同ls -l 命令 切换目录 cd 目录 ...
- [转帖]Linux Shell常用技巧(五)
Linux Shell常用技巧(五) https://zhuanlan.zhihu.com/p/73451771 1. 变量:在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义.变量的类型可 ...
- [转帖]拿小本本记下的Linux Shell常用技巧(一)
拿小本本记下的Linux Shell常用技巧(一) https://zhuanlan.zhihu.com/p/73361101 一. 特殊文件: /dev/null和/dev/tty Linux系统提 ...
随机推荐
- Python中四种运行其他程序的方式
原文地址:http://blog.csdn.net/jerry_1126/article/details/46584179 在Python中,可以方便地使用os模块来运行其他脚本或者程序,这样就可以在 ...
- 部署OpenStack问题汇总(一)--使用packstack安装openstack:源问题的处理
在安装的过程中,遇到了源的问题,找不到包的网页: 重新打开 预装源地址,打开epel-openstack-havana.repo 文件,显示如下: # Place this file in yo ...
- mac下用户用户组命令行操作
使用mac的时候需要像linux一样对用户和群组进行操作,但是linux使用的gpasswd和usermod在mac上都不可以使用,mac使用dscl来对group和user操作. 查看用户组: ds ...
- MongoDB安装、CURD操作、使用场景分析总结(1)
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL".非关系型的数据存储 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 ...
- Docker学习计划三:Dockerfile 使用
我们使用 Dockerfile 定义镜像,依赖镜像来运行容器,因此 Dockerfile 是镜像和容器的关键,Dockerfile 可以非常容易的定义镜像内容 首先通过一张图来了解 Docker 镜像 ...
- Adobe edge animate制作HTML5动画可视化工具(一)
Edge Animate for mac是Adobe最新出品的制作HTML5动画的可视化工具,简单的可以理解为HTML5版本的Flash Pro.在之后的文章中,我会逐一的介绍这款新的HTML5动画神 ...
- React 组件协同关系
组件协同的两种方法,1种是纵向的协同,就是组件嵌套,重点在于代码的封装,2种是横向协同也就是Mixin,组件抽离,重点在于代码复用 1.组件嵌套,父组件通过属性向子组件,子组件可以通过事件处理函数以委 ...
- php---进行RSA进行非对称加密
参考文档: https://blog.csdn.net/zhihua_w/article/details/74002212 http://www.bm8.com.cn/webtool/rsa/http ...
- java基础/一个类A继承了类B,那么A就叫做B的派生类或子类,B就叫基类或超类。
类重复,pulic class demo1 和class demo1 重复 无主类, 在cmd中输入命令: SET CLASSPATH=. (等号后为英文点符号),即可设置解释的路径为当前路径. 再次 ...
- hdu6390GuGuFishtion【数论】
GuGuFishtion Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tot ...