一 认识bash这个shell

1 管理整个计算机硬件的其实就是操作系统的内核,这个内核是需要被保护的,所以我们一般用户就只能通过shell来跟内核通信,以让内核达到我们所想打到的工作。

2 只要能够操作应用程序的接口度能够称为shell

3 bash shell 的功能

命令记忆功能history

命令与文件补全功能

命令别名设置功能(alias)

作业控制,前台,后台控制

程序脚本

通配符

二 shell的变量功能

1 环境变量例如PATH,HOME,MAIL,SHELL等,为了区别与自定义变量的不同,环境变量通常以大写字符来表示

2 我们可以利用echo这个命令来显示变量,但是变量在被显示时,前面必须加上字符$才行

3 基本上,命令运行的顺序可以这样看

1 以相对/绝对路径执行命令

2 由alias找到该命令执行

3 由bash内置的命令来执行

4 通过$PATH这个变量的顺序找到一个命令来执行

4 bash默认的组合键

Ctrl+C 终止目前的命令

Ctrl+D 输入结束EOF

Ctrl+M 就是Enter

Ctrl+S 暂停屏幕的输出

Ctrl+Q 恢复屏幕的输出

Ctrl+U 在提示符下,将整行命令删除

Ctrl+Z 暂停目前的命令

5 通配符与特殊符号

* 代表0个到无穷多个任意字符

? 代表一定有一个任意字符

[] 同一代表一定有一个在中括号内的字符,例如[abcd]代表这四个中一个

[-] 例如[0-9]代表0-9之间的所有数字

[^] 例如[^abc]表示的是非abc的其它字符

三 数据流重定向

1 标准输出指的是命令执行所回传的正确的信息,而标准错误输出可理解为命令执行失败后,所回传的错误信息

2 标准输入stdin:代码为0,使用<或<<

标准输出stdout:代码为1,使用>或>>

标准错误输出stderr:代码为2,使用2>或2>>

3 1>:以覆盖的方法将正确的数据输出到指定的文件或设备上

1>>:以累加的方法将正确的数据输出到指定的文件或设备上

2>:以覆盖的方法将错误的数据输出到指定的文件或设备上

2>>:以累加的方法将错误的数据输出到指定的文件或设备上

4 && 和|| 的执行情况

cmd1 && cmd2 若cmd1执行完毕且正确执行,则开始执行cmd2;若cmd1执行完毕为错误,则cmd2是不执行

cmd1 || cmd2 若cmd1执行完毕且正确执行,则cmd2不执行;若cmd1执行完毕且为错误,则开始执行cmd2

四 管道命令

1 管道命令|仅能经由前面一个命令传来的正确的信息,也就是标准输出的信息,对于标准错误输出是没有处理能力

2 在每个管道后面接的第一个数据必定是命令,而且这个命令必须是能够接收标准输入的数据才行,这样的命令才可以是管道命令

3 一般来说,选取信息通常是针对“行”来分析的,并不是整篇信息分析的

4 cut命令可以将一段信息的一段切出来,处理的信息是以行为单位

5 grep是抓取我们所需要的信息

6 sort可以进行文本数据来排序

7 uniq是可以将重复的数据仅列出一个显示,但是要求必须先排好序

8 wc可以用来统计文件的行数和单词数

9 tee命令可以用来双向重定向,同时将数据流送与文件与屏幕

Linux基本操作 9----- 认识与学习bash的更多相关文章

  1. 鸟哥的Linux私房菜-----10、学习Bash

  2. 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)

    第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...

  3. Linux学习笔记之认识与学习Bash

    什么是shell:shell是一个翻译器,将所敲的命令翻译成CPU能理解的语言,之后CPU再去执行,CPU执行后返回给shell,shell再翻译成我们所能理解的语言并显示:终端并不是shell,而是 ...

  4. 认识与学习BASH①——鸟叔的Linux私房菜

    文章目录 认识与学习BASH① 认识BASH 壳程序 多种shells Bash shell 的功能 type :查询指令是否为Bash shell 的内置指令 指令的换行输入和快速删除 Shell的 ...

  5. 第十一章、认识与学习BASH

    第十一章.认识与学习 BASH 最近升级日期:2009/08/25 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 ...

  6. Linux编程环境介绍(2) -- shell(Bash) 介绍

    1. 在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器).它类似于DOS下的command和后来的cmd.exe. 2. bash (Bourne Aga ...

  7. 快速学习Bash

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载. Shell是Linux下经典的文本互动方式,而Bash是现在最常用的一种Shell.我在这里总结了Bash ...

  8. 转载 linux基本操作

    转载地址 https://segmentfault.com/a/1190000014840829 前言 只有光头才能变强 这个学期开了Linux的课程了,授课的老师也是比较负责任的一位.总的来说也算是 ...

  9. 第十一章、认识与学习 BASH

    第十一章.认识与学习 BASH 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 shell 与 /etc/shel ...

  10. linux基本操作和常用命令(2)

    linux基本操作和常用命令(2) 第二部分主要是涉及到用户和组的概念,以及一些操作.涉及到用户和组的共三个文件,分别存放在/etc/shadow(密码信息) /etc/group(组信息) /etc ...

随机推荐

  1. ArcGIS学习记录—union、merge及append的区别

    原文地址: ArcGIS问题:union.merge及append的主要区别[转] - Silent Dawn的日志 - 网易博客 http://gisman.blog.163.com/blog/st ...

  2. 如何理解IoC/DI

    IoC:Inversion of Control,控制反转DI:Dependency Injection,依赖注入 要理解上面两个概念,就必须搞清楚如下的问题: 参与者都有谁?依赖:谁依赖于谁?为什么 ...

  3. 如何设置table的border-radius?

    遇到一个诡异的问题, 为table添加border-radius不起作用. 示例如下: #table1 { border-collapse: collapse !important; border-r ...

  4. JSP JSP工作原理 JSP语法 JSP声明 JSP注释 JSP指令 jsp九大隐式/内置对象

    1 什么是JSP   1)为什么说,Servlet是一个动态Web开发技术呢?     Servlet是基于服务端的一种动态交互技术,     HttpServletRequest表示客户端到服务端的 ...

  5. Android 签名(1)为什么要签名

    所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序 签名可以: 1,用特权,2完整性鉴别,3安全保证, 1,专用权限或特权要签名 一些特权要经签名才允许.签名可用:S ...

  6. 函数buf_LRU_free_from_unzip_LRU_list

    /******************************************************************//** Try to free an uncompressed ...

  7. mvc 相关js

    http://modernizr.com/ https://github.com/Modernizr/Modernizr/wiki 主要看下Polyfills 用于html5,用于一些老ie,fire ...

  8. html的视频插件 (转)

         1)jMedia Element是一个基于jQuery/jQuery UI实现的HTML5音频/视频开发工具包.提供非常多的功能来控制页面中的音频和视频内容.当旧的浏览器不兼容HTML5时, ...

  9. java中volatitle关键字的作用

    用在多线程,同步变量. 线程为了提高效率,将某成员变量(如A)拷贝了一份(如B),线程中对A的访问其实访问的是B.只在某些动作时才进行A和B的同步.因此存在A和B不一致 的情况.volatile就是用 ...

  10. 【转】报错:Program "sh" not found in PATH

    原文网址:http://www.cnblogs.com/SadNight/p/3406201.html (1) 报错:Program "sh" not found in PATH ...