shell基础一

一、什么是shell

  shell是个功能强大的编程语言,也是个解释执行的脚本语言(命令解释器)。

二、shell分类

  1.bourne shell (包括sh、ksh、Bash、psh、zsh)。

  2.c shell(主要应用于BSD版的UNIX系统包括csh和tcsh)。

三、shell基本功能

1、echo用法

  语   法:echo [-ne][字符串]或 echo [--help][--version]
补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。
  参 数:-n 不要在最后自动换行
     -e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般
  文字输出:
     \a 发出警告声; \b 删除前一个字符; \c 最后不加上换行符号;\f 换行但光标仍旧停留在原来的位置;\n 换行且光标移至行首;\r 光标移至行首,但不换行;\t 插入tab; \v 与\f相同; \\ 插入\字符; \nnn 插入nnn(八进制)所代表的ASCII字符;–help 显示帮助 ;–version 显示版本信息|

2、脚本执行方法

  方法1:给这个文件赋予可执行权限,然后用绝对路径或者是相对路径的方法执行。

  方法2:直接通过bash调用执行脚本四、Bash的基本功能

3、history用法 

  history [选项] [文件位置]

       -c 清空历史命令 -w把缓存中的历史命令写入到文件中。(注:history历史命令保存条数默认是1000条,可以在/etc/profile这个文件中修改历史命令保存条数,查历史命令保存的文件是在系统登录用户的家目录下的.bash_history)。

  补充:历史命令调用的方法有上下键,!!是调用上一条命令,!n是调用地n条历史命令,!字符串是调用最近一条已该字符串开头的命令。

4、alias别名
  设定别名格式:alias 命令别名='命令'、查询别名alias、删除别名unalias 别名。

  命令的优先级:绝对路径或者相对路径命令》命令别名》bash定义的内部命令》PATH系统环境变量命令。

  补充:ctrl+a(把光标移动命令开头)、ctrl+e(把光标移动命令结尾)、ctrl+u(删除或剪切光标之前命令)、ctrl+k(删除或剪切光标之后命令)、ctrl+y(粘贴命令)、ctrl+l(清屏)、ctrl+c(终止命令)、ctrl+r(在历史命令中搜索)、ctrl+s/q(暂停或恢复屏幕输出)。

5、输入输出重定向

         输出重定向                                                                             标准输入输出         

 

输出重定向                                                                                         输入重定向

  补充:wc [选项] [文件名] 统计字计数

            -c统计字节数 -l统计行号 -w统计单词数

6、多命令顺序执行和管道符

    多命令执行顺序                                                                               管道符

                    grep -[ivn] --colour  搜索关键字内容

7、通配符和其他特殊符号

通配符                                                                                 bash中其他特殊符号

      

  

  

  

  

  

最新文章

  1. Rxjava异常处理
  2. ajax实现上传文件
  3. Visual Studio 2013支持Xamarin的解决方案
  4. 基于STM32和W5500的Modbus TCP通讯
  5. Python-9 函数
  6. [JavaWeb]关于DBUtils中QueryRunner的一些解读.
  7. 一直都在说反射很有用 谈谈大型.NET ERP系统有哪些地方用到了反射
  8. [转]php 解决json_encode中文UNICODE转码问题
  9. 转:PCL+VS2010环境配置
  10. 高效的两段式循环缓冲区──BipBuffer
  11. linux基础命令学习(七)samba服务器配置
  12. 【转】cocos2d-x使用第三方的TTF字体库
  13. css3新增的背景属性
  14. 面向对象的全套“企业微信”api接口的代码实现,网上太多“面向过程”微信api接口的代码,这个开源给需要的人用
  15. Websphere(was)与Weblogic部署EJB的注意项
  16. Groovy学习笔记-实现接口
  17. os x && linux 文件传输基础命令
  18. 建立爬虫代理IP池
  19. python pytest测试框架介绍五---日志实时输出
  20. ModuleNotFoundError: No module named 'Crypto.Cipher'

热门文章

  1. 懒人学习automake, Makefile.am,configure.ac(转)
  2. 【Java】Java_19递归算法
  3. WIN10 当中装BDM驱动
  4. 隐藏ion-nav-back-button的文字
  5. c#通过URL地址从服务器上下载文件
  6. ie8下面版本号(包含ie8)的浏览器不支持html5标签属性解决方式(Modernizr 2.6.2插件的使用)
  7. mysql中把字符串转成时间戳进行对比
  8. CentOS yum 命令出现 [Errno 14] curl#6 - "Couldn't resolve host ..." 的解决方法
  9. Spring在注入bean异常时的替换
  10. openWRT自学---对官方的开发指导文档的解读和理解 记录1:编译一个package