shell的类型
  • 查看用户所用的shell程序,在/etc/passwd 文件中的第七个字段(好像就是最后一个,主要是bash shell)
  • 还有一个默认shell是/bin/sh,它作为默认的系统shell,用于那些需要在启动时使用的系统shell脚本
  • 系统默认shell不一定和用户的一致(Ubuntu,它的默认shell是dash shell)
shell的父子关系
 
第一次使用ps -f 的时候,显示出了两个进程,有一个id是12546运行的是bash shell,而另一个进程(12587)对应的是ps -f
 

在子shell中可以继续创建子shell。可以通过exit来退出子shell。
进程列表
我们可以在一行中指定要依次执行的一系列命令,命令之间通过(;)即可。

注:pwd当前路径
 
但这个并不是进程列表,如下图,现在仍然只有两个进程,没有产生新子shell。下面添加了“()”产生了新的进程。判断是否生成子shell,需要借助环境变量命令 echo $BASH_SUBSHELL(注:SUBSHELL就是子shell),返回0就没有子shell,大于1就是有子shell,返回的数字就是子shell的个数。 子shell中可以调用子shell,如:(pwd ; (ls ;cd /etc/ ;pwd ; cd ;echo $BASH_SUBSHELL)),这样就调用了两个子sheell.

  • 子shell使用
     sleep 命令,用法:sleep 10 会将会话暂停10秒。在命令末尾加上“&”字符,是将命令置入后台模式,我们可以通过ps -f 来查看。也可以通过jobs来查看,显示在后台模式中的所有用户进程。通过jobs -l可以查看进程的PID。
     协程(coproc):它在后台生成一个子shell,并在这个子shell中执行命令。
     扩展语法“{}”:必须在第一个"{"和命令之间加一个"空格",命令结束后以分号";"结束,另外分号和"}"之间也要有空格。
     生成子shell的成本比较高,而且速度还慢。
     type -a 每个命令的实现,which命令只显示出外部命令文件。调用外部命令方法指明文件即可。如:pwd ,可以通过/bin/pwd来实现外部命令。
     history:查看最近用过的命令列表。通常记录1000条。"!!"可以换出刚刚执行命令并执行。
     所有的命令都保存在 ".bash_history"中,但是你要退出才会保存,我们可以通过history -a 来强制保存。
     我们可以通过,"!数字"来调用这个命令。

  • 命令别名(alias):
     alias -p 来查看当前的命令别名
     alias li='命令'来创建自己的别名。
     如:alias ll='ls -l',下次可以直接通过"ll"来使用。
 
 

shell初步了解的更多相关文章

  1. Shell 初步学习

    Shell 概述 Shell:Linux命令解释器 脚本执行方式 chmod 755 脚本名:赋权限(调用必须显示的使用绝对路径或相对路径) bash 脚本名:通过Bash调用执行脚本 命令别名 al ...

  2. 韩顺平_linux_随堂笔记

    这还是自己3年前(2011年)整理的笔记,记得当时那会儿自己对Linux还特别的憧憬,也很喜欢韩老师的讲课风格,边看边做笔记乐此不彼,现在开通了技术博客,所以把当年的笔记也放上来和大家分享.同时推荐没 ...

  3. 大数据中HBase集群搭建与配置

    hbase是分布式列式存储数据库,前提条件是需要搭建hadoop集群,需要Zookeeper集群提供znode锁机制,hadoop集群已经搭建,参考 Hadoop集群搭建 ,该文主要介绍Zookeep ...

  4. 第5天(半天)【shell编程初步、grep及正则表达式】

    第5天(半天)[shell编程初步.grep及正则表达式] shell编程初步(01)_recv shell脚本:文本文件 #!:/bin/bash #!:/usr/bin/python #!:/us ...

  5. 在Scrapy项目【内外】使用scrapy shell命令抓取 某网站首页的初步情况

    Windows 10家庭中文版,Python 3.6.3,Scrapy 1.5.0, 时隔一月,再次玩Scrapy项目,希望这次可以玩的更进一步. 本文展示使用在 Scrapy项目内.项目外scrap ...

  6. 初步认识shell

    言语不多说,直奔主题,lz不善于写文章,只是记录自己学习过程中的点点滴滴. 注意:shell对于字母大小写比较敏感. 打开终端出现:username@hostname$或者root@hostname# ...

  7. shell是什么,各种shell的初步认识,适用于初学者

    shell是什么?有什么用处?怎么用?我相信,这是大部分人刚接触到shell都有过的疑问.下面小编为大家讲解一下自己的讲解,希望能对大家有所帮助. 什么是shell? shell就是系统内核的一层壳, ...

  8. [拾 得] 一枚迷人的贝壳 SHELL / Linux | shell 脚本初步入门

    坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/   索引: 什么是shell shell的分类 shell脚本的执行方式   ...

  9. Linux:Day5 shell编程初步、grep

    bash的基本特性(3) 1.提供了编程环境 程序编程风格: 过程式:以指令为中心,数据服务于指令: 对象式:以数据为中心,指令服务于数据: shell程序:提供了编程能力,解释执行:过程式.解释执行 ...

随机推荐

  1. Linux基础命令操作实例

    1.开启Linux操作系统,要求以root用户登录GNOME图形界面,语言支持选择为汉语 2.使用快捷键切换到虚拟终端2,使用普通用户身份登录,查看系统提示符 使用快捷键Ctrl+Alt+F2切换到终 ...

  2. Linux实战教学笔记25:自动化运维工具之ansible (一)

    第二十五节 ansible之文件的批量分发 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转 ...

  3. RabbitMQ-从基础到实战(3)— 消息的交换

    1.简介 在前面的例子中,每个消息都只对应一个消费者,即使有多个消费者在线,也只会有一个消费者接收并处理一条消息,这是消息中间件的一种常用方式.还有另外一种方式,生产者生产一条消息,广播给所有的消费者 ...

  4. mui学习链接

    http://dev.dcloud.net.cn/mui/snippet/ http://www.bcty365.com/content-146-2453-1.html hbuilder转rem值: ...

  5. 那些"不务正业"的IT培训公司

    前言 大四下期了,现在准备找一份Java开发的实习工作,于是在各大网站上投递简历-智联招聘.51job.拉勾网,慧眼识真金的我必然会把培训机构给过滤掉,对于重庆来说招聘实习的公司少之又少,然而是智联招 ...

  6. windows phone 8.1 FlipView 实现照片自动浏览

    FlipView 控件也是一个集合控件,不过它和ListView等控件不同,ListView控件是一次显示多个项,而FlipView则是每次只显示一个项.在windows phone上通过默认的左右滑 ...

  7. SQL Server--获取磁盘空间使用情况

    对于DBA来说,监控磁盘使用情况是必要的工作,然后没有比较简单的方法能获取到磁盘空间使用率信息,下面总结下这些年攒下的脚本: 最常用的查看磁盘剩余空间,这个属于DBA入门必记的东西: -- 查看磁盘可 ...

  8. cstring头文件函数解析

    原创作品,转载请注明来源:http://www.cnblogs.com/shrimp-can/p/5643829.html 在使用由字符数组或指针组成的字符串的时候,要用到一些函数,这些函数通常包含在 ...

  9. iOS开发之触摸事件及手势

    1.iOS中的事件 在用户使用app过程中,会产生各种各样的事件,iOS中的事件可以分为3大类型: 2.响应者对象 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并 ...

  10. iOS开发之如何修改导航栏的内容

    导航栏的内容由栈顶控制器的navigationItem属性决定. UINavigationItem有以下属性影响着导航栏的内容(通常在子控制器中viewDidLoad方法中调用这些方法): 左上角的返 ...