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应用技巧的更多相关文章

  1. 【shell 大系】Linux Shell常用技巧

    在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...

  2. Shell 小技巧

    Shell 小技巧 ${} 的使用 截断变量 去掉左边 使用 # (最短匹配)或 ## (最长匹配)方法为 ${var#<模式>} var=DUMMY echo ${var#*M} # M ...

  3. Linux Shell常用技巧(目录)

    Linux Shell常用技巧(一) http://www.cnblogs.com/stephen-liu74/archive/2011/11/10/2240461.html一. 特殊文件: /dev ...

  4. Linux常用命令(第二版) --Shell应用技巧

    Shell应用技巧 小技巧: 1.命令补全功能: <Tab>键 2.清屏: Ctrl+l 3.删除光标前所有内容: Ctrl+u 4.命令历史记录: history 这时:  !histo ...

  5. Shell 常用技巧

    Shell 常用技巧 echo $RANDOM | cksum | cut -c - openssl rand -base64 | cksum | cut -c - date +%N | cut -c ...

  6. 6条shell小技巧,让脚本显得不再业余【转】

    如何能让自己的shell显得不那么业余?下面6点实践一定有用. 画外音:本篇文章源自Google的一篇实践,抽取了部分1分钟能读完的内容,加入了一些分析. 一.以下面的语句开场 set -o noun ...

  7. Linux_CentOS常用命令和shell命令技巧

    Linux_CentOS常用命令 关机 init 重启 init 列出当前目录的下的文件 ls //列出当前目录下的文件 ll //列出当前目录下的文件信息 等同ls -l 命令 切换目录 cd 目录 ...

  8. [转帖]Linux Shell常用技巧(五)

    Linux Shell常用技巧(五) https://zhuanlan.zhihu.com/p/73451771 1. 变量:在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义.变量的类型可 ...

  9. [转帖]拿小本本记下的Linux Shell常用技巧(一)

    拿小本本记下的Linux Shell常用技巧(一) https://zhuanlan.zhihu.com/p/73361101 一. 特殊文件: /dev/null和/dev/tty Linux系统提 ...

随机推荐

  1. Python pyQt4/pyQt5 学习笔记2(状态栏、菜单栏和工具栏)

    例子:状态栏.菜单栏和工具栏 import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(sel ...

  2. SharpGL学习笔记(十) 常见的光源类型,创建光源

    在OpenGL中,使用光源的特性组合,如颜色,位置,方向等等,可以创建多种不同类型的灯光. 常见的几种灯光类型有: 定向光源(directonal) 定位光源(positional) 衰减光源 聚光灯 ...

  3. [Apio2008]免费道路[Kruscal]

    3624: [Apio2008]免费道路 Time Limit: 2 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 1292  Solved:  ...

  4. WinDbg基于管道的虚拟机Kernel Debugging

    Windows Server 2012 + Hyper-V调试Windows XP SP3 32-bit虚拟机. 1.Hyper-V选中虚拟机,设置COM port,Named pipe定义一个名字. ...

  5. Angular打开页面隐藏显示表达式

    1.使用 ng-cloak, 同时要在css加入一行 [ng-cloak] {display: none;} 样式 [ng:cloak], [ng-cloak], [data-ng-cloak], [ ...

  6. tomcat启动报错:serializer.jar (系统找不到指定的文件。)

    下载最新对应版本的tomcat.移除之前的tomcat.删除原本全部tomcat的目录. 疑似tomcat的lib包被动过.

  7. Spark2 SQL configuration参数配置

    查看当前环境SQL参数的配置 spark.sql("SET -v") key value spark.sql.hive.version 1.2.1 spark.sql.source ...

  8. php中调用这个功能可以在web页面中显示hello world这个经典单词

    php程序写的时间长了,自然对他所提供的功能了如指掌,他所提供的一大堆功能,真是觉得很好用,但有时候会发现php也缺少一些功能,自己总是会产生为php添加一些自定义的功能的想法.久而久之,终于今天憋不 ...

  9. java 类中的细节

    java 中类: 类是用于描述统一类型的对象的一个抽象的概念,类中定义了这一类对象所因具有的静态和动态属性. 举例: 瓶子静态: 有一个口.长长的形状-->java类中的成员变量动态属性: 可以 ...

  10. ubuntu怎么安装下载工具uget+aria2 for firefox

    Windows下的下载工具--迅雷,之所以下载速度快,乃是它能搜索资源.为己所用,而不是仅仅从原始地址这单一资源处下载. Ubuntu下也有类似的工具,那就是aira2. aira2是一个命令行下载工 ...