Linux系列(11):之bash进阶与数据流导向、管线命令
1.万用字符与特殊字符
在bash的环境下有一个特别有用的功能,那就是万用字符!下面展示常见的万用字符:
1.万用字符
除了万用字符还有一些其他的特殊字符,接下来显示特殊字符。
2.特殊字符
2.数据流重导向
数据流重导向就是将某个指令执行后因该要出现在屏幕上的数据给它传输到其他的地方,比如文件或者设备之类的。
1.什么是数据流重导向
标准输出:将指令执行结果显示到屏幕
标准错误输出:将指令执行出错的信息显示到屏幕
数据的重导向可以将指令执行的结果信息传送到其他地方。
2.重导向特殊字符
有 3种重导向特殊字符,分别对应标准输入、标准输出、标准错误输出。如下所示:
对于标准输出与标准错误输出而言:
重定向符1>等同于>。重定向符1>>等同于>>。
3.重定向命令格式
指令格式:command [options] 重定向符 地址
下面看一下输出重定向实例:
解释一下上图内容,ll指令是‘ls -l’指令的别名,因此第一行指令是以列表的形式在屏幕显示根目录/的下的目录或文件,但是并没显示在屏幕,因为后面用了重定向标准输出符‘>’将输出的内容重定向到zxp_file文件中了。注意如果没有zxp_file这个文件,那么会自动创建该文件。
3.连续指令符
连续下达命令的意思就是在一个行中包含多个指令。
那什么时候需要用到连续指令呢?
1.连续指令符分类
一共可以分为三种。
1.第一种
2.第二、三种
4.管线命令
1.管线命令使用场景
实例:
ls -l /etc | less //显示第一页内容
如果直接使用指令ls -l /etc会显示所有的信息,如果信息太多,会自动选择显示最后一页内容,那么我们如果想要显示第一页的内容那么必须用到管线命令,将ls指令的输出内容作为less指令的输入内容,而less就是从第一页开始显示的,因此会显示第一页内容。
2.管线命令使用原理
3.常用的管线命令
主要的管线命令:cut 、grep ;sort 、wc 、uniq ;tee ;tr 、col 、join 、paste 、expand ;split ;xargs等。
撷取命令:cut、grep
排序命令:sort 、wc、uniq
双向重导向命令:tee
字符转换命令:tr、col、join、paste、expand
分区命令:split
参数代换命令:xargs
1.撷取命令:cut、grep
撷取信息通常是针对“一行一行”来分析,并不是对整篇信息进行分析。
1.cut指令
功能:可以将某一行信息中的某一部分撷取出来
2.grep指令
grep命令的功能:就是将一段数据经过分析取出我们想要的部分,撷取是针对一行为单位进行分析,之后留下符合要求的行,丢弃不符合要求的行。
Linux系列(11):之bash进阶与数据流导向、管线命令的更多相关文章
- 跟着鸟哥学Linux系列笔记3-第11章BASH学习
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...
- 跟着鸟哥学Linux系列笔记1
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 装完linux之后,接下来一步就是进行相关命令的学习了 第五章:首次登录与在线求助man page 1. X ...
- kali Linux系列教程之BeFF安装与集成Metasploit
kali Linux系列教程之BeFF安装与集成Metasploit 文/玄魂 kali Linux系列教程之BeFF安装与集成Metasploit 1.1 apt-get安装方式 1.2 启动 1. ...
- Linux 学习记录 四(Bash 和 Shell scirpt).
一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工 ...
- Linux系列(14)之工作管理
1.工作管理 说明:工作管理(job control)是用在bash环境下的,也就是说:“当我们登录系统取得bash shell之后,在单一终端机接口下同时进行多个工作的行为管理”.举例说明,我们在登 ...
- Linux Capabilities 入门教程:进阶实战篇
原文链接:https://fuckcloudnative.io/posts/linux-capabilities-in-practice-2/ 该系列文章总共分为三篇: Linux Capabilit ...
- shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)
如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...
- 跟着鸟哥学Linux系列笔记2-第10章VIM学习
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 常用的文本编辑器:Emacs, pico, nano, joe, vim VI ...
- [Linux] PHP程序员玩转Linux系列-使用supervisor实现守护进程
1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 4.PHP程序员玩转L ...
随机推荐
- mac使用php-version切换PHP版本
在开发过程中,有时候我们的程序对某个php版本有着极为重要的限制,特别是大型项目. 因此,我们就需要切换多个php版本来满足我们的需求. 我们使用php-version来达到这个目的. 首先我们先使用 ...
- 初步学习HashTable(哈希表或者散列链表)
初次接触哈希表,我谈谈自己对哈希表的一些理解,可能有误,还望指正. 对于哈希表,存放的数据是键值对<key,value>.是按照键值来索引的,键key可以是字符串.单个字符.整形数等,值v ...
- Mybatis源码学习之类型转换(四)
简述 JDBC数据类型与Java语言中的数据类型并不是完全对应的,所以在PreparedStatement为SQL语句绑定参数时,需要从Java类型转换成JDBC类型,而从结果集中获取数据时,则需要从 ...
- 定时从linux获取信息放到windows上
环境:windows上代码路径下存放:WinSCP-5.13.8-Setup.exe 第一步:test.txt 拉取脚本的txt文本 解析:存放从linux路径下拉取所需源文件zyy_count. ...
- SpringBoot整合guava缓存
1.pom文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- 常用css模板
段落超出显示省略号(可单行多行) .p-content{ overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-b ...
- mac 安装laravel
安装laravel之前先安装composer 使用 curl 指令下载: curl -sS https://getcomposer.org/installer | php 或是沒有安裝 curl ,也 ...
- mac mysql重置root用户密码
苹果机安装的MySQL后,设置初始密码 引子:.在苹果机上安装的MySQL之后,通过MySQLWorkBench登录本地数据连接,发现没有密码,而在安装MySQL的过程中,是没有设置过密码的其实,刚刚 ...
- 【MyBatis】【SQL】删除最快纪录诞生,从一千万条记录中删除八百万条仅用2分6秒
在 https://www.cnblogs.com/xiandedanteng/p/11669629.html 里我做个一个循环按时间查ID并删除之的程序,运行时间是4分7秒. 但是这个程序走了很多次 ...
- UTC ISO 8601
如果时间在零时区,并恰好与协调世界时相同,那么(不加空格地)在时间最后加一个大写字母Z.Z是相对协调世界时时间0偏移的代号.如下午2点30分5秒表示为14:30:05Z或143005Z:只表示小时和分 ...