2019独角兽企业重金招聘Python工程师标准>>>

1、通配符 *

“ * ”表示通配,见下图,

当前目录下有5个 txt 文件。也有其他写法,结果也是不一样,见下图,

以上就是 * ,和 * 有对比的字符是 ? 。见下图,

?表示一个任意的字符,数字和英文字母都可以。接着做对比,见下图,

还有一种用法是使用中括号,见下图,

还有花括号的用法,见下图,

与中括号不同的是,花括号里面的字符需要用“,”号隔开。

2、输入输出重定向

> 表示输入输出重定向,举个例子,见下图,

查看 1.txt 和 2.txt 文件,里面没有内容,使用 vi 命令在里面写上一串数字。从上图中可以看出, cat 1.txt > 2.txt 这个命令表示将 1.txt 的内容重定向到 2.txt ,就是将 2.txt 的内容删除掉,将 1.txt 的内容重写到 2.txt 。

>> 表示追加内容,举个例子,见下图,

为了将 1.txt 和 2.txt 文件区别开,编辑更改一下 2.txt 里面的内容,然后输入命令 cat 1.txt >> 2.txt ,可以看到,1.txt 里的内容追加到 2.txt 上了。

2> 会把这个命令产生的错误信息,指定输入到一个文件里,表示错误的输出。举个例子,见下图,

运行一个有问题的命令 lsaaa ,提示未找到命令。这时候可以把这个错误信息定向到文件 a.txt 里去。然后用命令 cat a.txt 查看,里面的文件内容就是刚才的错误信息“-bash: lsaaa: 未找到命令”。上图中的 2>> 表示追加重定向。

总结一下:

>       表示输出,输出到指定的文件

>>    表示追加重定向

2>     表示错误的重定向

2>>  表示错误的追加重定向

那么,我们也可以把 > 和 2> 结合起来,写成 &> ,表示正确和错误的输出信息全部定向到一个文件里去。举个例子,见下图,

同样也支持追加,表示为 &>> ,见下图,

还有一种方法,把正确和错误的输出区分开,见下图,

表示正确的输出到 1.txt 文件,错误的输出到 a.txt 文件。这个以后写 shell 脚本的时候,用的比较多。

< 表示为输入重定向。举个例子,见下图,

wc -l 为查看文本文档行数的命令,< 输入重定向的左边一定是一条命令,右边是文件。上图第二条命令里面,尝试左边为文件的时候,出现报错。

输入重定向做个了解即可,一般工作中用不到。

管道符和作业控制

3、管道符

管道符之前介绍过,它表示把一个文件的输出内容传递给后面的命令。举个例子,见下图,

关于管道符,有很多命令是可以用的,就是把前面命令输出的结果,交给后面的命令。后面会经常用到。

4、作业控制

之前说过一个快捷键,ctrl + z ,表示暂停一个任务。见下图,

输入命令 vim 1.txt ,回车,进入文件 1.txt 编辑。这时候想暂时退出来做其他事情的话,就可以使用 ctrl +z 命令来停止,这时候就可以退出来回到命令窗口,做其他的事情。那么 vim 这个命令其实还在后台,怎么再调出来呢?输入命令 fg ,回车,见下图,

又进入 vim 1.txt 这个页面里。fg 就是 front ground ,到前面来的意思。

后台的运行文件可以有多个,注意上图中的数字序号,命令 jobs 可以列出后台运行的任务信息。现在要把后台运行的任务调出来的话,命令 fg 后面就要加上 id 号,例如 fg 1 或是 fg 2 。若直接输入 fg 的话,默认是跳出最后执行的一个任务。

既然有 front ground ,也就有 back ground ,命令为 bg ,调到后台去。见下图,

将 vim a.txt 任务调到后台去,就变成上图红色框框的内容,相当于在后台运行。一般使用 vim 命令是达不到这种效果的,

现在运行命令 vmstat 1 ,这个命令后面会讲到,它会自带的显示系统的状态,而且是不停的显示。按住 ctrl + z ,就可以停止命令,然后输入 fg 命令,就可以把它调回来,接着按住 ctrl + z ,就可以停止命令,再输入 bg ,

就可以让它在后台运行,在运行的过程中,也可以运行其他命令,命令输入正确即可,即使被打断了也没有关系。见下图,

可以看到 vmstat 1 在运行中。接着见下图,

输入 fg ,可以进入 vim 1.txt ,进去之后,vmstat 1 还在一直运行,输入 :q! ,强制退出,然后输入 jobs ,可以看到,只有一个任务运行。

目前为止, vmstat 1 还在后台运行,把它调到前台,输入 fg 命令,回车,就进入前台执行命令。这时候,输入其他命令就不管用了。可以按住 ctrl + c ,直接结束命令。执行命令 jobs ,就可以看到没有任务了。

刚才说到一个观点,运行一条像 vmstat 1 这样的命令时,使用 bg 命令把它调到后台去,显示成运行中,还是会运行的。但是这边 vim 的命令是不算的,因为停止一条 vim 命令,不管是在前台还是后台,都是不会运行、停止的状态。

接着介绍一个命令 sleep ,sleep 1000 表示暂停1000秒,整个工作暂停运行,1000秒之后才会恢复。见下图,

bg 就是把一条命令调到后台去运行。还有一个命令,可以不用先运行命令,就能直接在后台运行,加一个 & ,见下图,

这边说一下 xshell ,如果另外打开一个终端,运行 jobs 命令,是看不到命令的。意思就是这个终端看不到另外一个终端后台运行的命令,但是可以看到进程,输入命令 ps aux |grep sleep ,回车,

关于 ps 命令,后面还会说到。

总结:

ctrl + z             暂停一个命令

fg                     调出一个命令到前台

bg                    将一个命令调到后台并运行

&                     在一条命令后面加上这个符号,可以直接将命令调到后台运行

sleep +时间      暂停系统多少秒

vmstat 1           不停的显示系统状态命令

转载于:https://my.oschina.net/u/3867265/blog/1836212

通配符及输入输出重定向、管道符和作业控制相关推荐

  1. shell介绍,命令历史,命令补全和别名 ,通配符, 输入输出重定向

    2019独角兽企业重金招聘Python工程师标准>>> shell介绍 shell是一个命令解释器,提供用户和机器之间的交互: 支持特定语法,比如逻辑判断.循环: 每个用户都可以有自 ...

  2. 8.1-8.5 shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向

    8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 8.1 shell介绍 Linux Shell基础 介绍shell的特性,用法. shell是 ...

  3. 8.1-5shell介绍 ,命令历史 ,命令补全和别名,通配符,输入输出重定向

    2019独角兽企业重金招聘Python工程师标准>>> Shell介绍 shell是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断.循环(if for whel ...

  4. 8.1shell介绍 8.2命令历史 8.3命令补全和别名 8.4通配符 8.5输入输出重定向

    8.1 shell介绍 . 查找一下有没有这2个安装文件 8.2 命令历史 环璄1000,所以只能存1000条记录 ' 有时候查到比1000多了,那是因为输入的命令还没有写进这个文件,只存在内存中 h ...

  5. (转载)linux下输入输出重定向和管道符

    linux下输入输出重定向和管道符 1. 输出重定向 >代表以覆盖的方式将命令的正确输出输出到指定的文件或设备当中. >>代表以追加的方式将命令的正确输出输出到指定的文件或者设备当中 ...

  6. 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向

    执行过的命令Linux都会记录,预设可以记录1000条历史命令.这些命令保存在用户的家目录的.bash_history文件中.只有当用户正常退出当前shell时,在当前shell中运行的命令才会保存至 ...

  7. shell介绍 命令历史 命令补全和别名 通配符 输入输出重定向

    8.1 shell介绍 shell 是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断,循环 每个用户都可以有自己特定的shell CentOS7默认shell 为bash(Bou ...

  8. 26期20180628 shell 命令操作 通配符 输出输入重定向

    6月28日任务 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 shell介绍 Shell脚本只是一个表现,所谓的shell是一个命令解释器, ...

  9. 简单上手Linux的输入输出重定向

    什么叫输入输出重定向,就是原来输入输出都各自有标准(默认)方向,但是现在不用默认的就叫重定向. 输入输出都各自有标准(默认)方向分别是键盘,显示器. Linux 中一切皆文件,包括标准输入设备(键盘) ...

最新文章

  1. 转、转、转——陀螺的梦话
  2. React 项目 -ES6 语法类的继承 (10)
  3. scrapy 模块功能流程--转
  4. Java:关于main方法的10道面试题
  5. vscode python单步调试_调试期间VSCode python“未验证断点”?
  6. 【golang】从源代码编译golang编译器
  7. python中range 函数_Python
  8. 存储如何做远程服务器数据备份_如何选择存储用的服务器?
  9. QCon北京2015:移动开发最佳实践专题前瞻
  10. Pragma Directives
  11. mysql实现火车购票系统_火车票购票系统的设计与实现(MyEclipse,MySQL)
  12. 基于java企业人事管理系统mysql
  13. 使用JDBC创建出版社和书籍管理系统
  14. Postgres更改所有表的Owner
  15. Python学习笔记4---类和对象
  16. 【无限互联】学员作品 豆果美食IOS客户端
  17. C++操作Excel表格
  18. 彻底删除2345输入法
  19. 华科计算机专硕英语几,2020华中科技大学计算机专硕考研成功经验谈
  20. ffmpeg批量转换flac为wav,m4a转换为wav,批量删除目录下某一后缀名文件,复制文件中有相同部分的文件

热门文章

  1. vim全局搜索并跳转
  2. 系统服务器端口怎么关闭了,如何关闭云服务器端口号
  3. 安卓linux定时执行脚本,Android开机自动执行shell脚本
  4. 大数据征信需把控 数据源的“量”与“度”
  5. Codeforces Round #333 (Div. 2) C. The Two Routes flyod
  6. 【原】让H5页面适配移动设备全家 - 设计师篇 - PPT
  7. GameByro渲染系统剖析
  8. 浅谈Dynamic 关键字系列之二:调用属性,方法,字段
  9. 西门子连接id_基于海创-IIoT可视化平台的西门子PLC数据采集
  10. centos6 安装 mantisbt-1.2.8 —— (2)【linux】VMware安装CentOS 6.4