[shell问答录]:命令、进程、子shell...
2019独角兽企业重金招聘Python工程师标准>>>
前些天在CU上讨论一个统计正在执行的脚本数量的问题过程中,发现自己对于shell如何执行命令方面了解还是甚少,惭愧惭愧...期间得到waker兄的指点,在此表示感谢!他的说法除了个别地方不太准确外,基本上是正确的。这些天抽时间找了些资料研究了一下,又学到了不少!这里把我的一点心得以问答的形式贴出来,供大家参考。小弟才疏学浅,错误的地方一定很多,欢迎大家拍砖、指正!
Q1: shell如何执行“简单”命令? 2.外部命令("external command" or "disk command") 3.shell脚本(script) Q2: shell脚本是否作为单独的一个进程执行? Q3: shell何时在子shell中执行命令? 2.后台执行或异步执行 3.命令替换 4.管道(不同的shell处理不同) 5.进程替换(仅bash/zsh中,非POSIX兼容) 6.if或while命令块的输入输出重定向 7.协进程(ksh) Q4: 既然在当前shell中执行命令也会派生子shell,那么它与在子shell中执行命令又有什么区别呢? Q5: 怎样把子shell中的变量传回父shell? 2.使用命名管道 3.使用coprocess(ksh) 4.使用命令替换 5.使用eval命令 6.使用here document 7.使用here string(bash/pdksh) 8.不用子shell,用.命令或source命令执行脚本。 |
转载于:https://my.oschina.net/shangjx13/blog/33217
[shell问答录]:命令、进程、子shell...相关推荐
- sh linux 一组命令,linux中的组命令和子shell
组命令和子shell 在bash中,有两种方式可以将命令组合到一起,一种是组命令,另一种是子shell.格式如下:# 组命令 { commnad1; command2; [ command3.. ] ...
- linux shell运行脚本命令行参数,shell脚本命令行参数简介
之所以用到命令行参数,关键在于shell脚本需要与运行脚本的人员进行交互. bash shell提供了命令行参数添加在命令后面的数据值).命令行选项修改命令行为的单字符值)和直接读取键盘输入. 1.命 ...
- linux shell两条命令,在bash shell终端中执行命令时,若要将多条命令书写在一行中,每个命令之间应用( )符号进行分隔。...
[单选题]DE 杆的角速度的转向为: [判断题]中碳钢的含碳量在0.25%~0.6%之间 [多选题]在大众餐馆吃饭时,应该先( ),之后才能抽烟. [单选题]乳腺癌改良根治术后对患侧上肢肿胀的护理,错 ...
- 修改rcS启动定制功能,后台运行脚本,新建子SHELL进程。
除了在rcS中编写了启动所需的必须功能命令后,我们还可以添加自己的定制功能.方法如下: 首先,在/usr/bin下,编写各个定制功能的脚本.注意修改权限 chmod a+x myscript 在脚本里 ...
- 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter1-Chapter16 )
一.初识 Linux shell Linux 系统可划分为以下 4 部分. Linux 内核 GNU 工具 图形化桌面环境 应用软件 内核主要负责以下 4 种功能. 系统内存管理 内核通过硬盘上称为交 ...
- 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-Chapter6-Linux 环境变量
六.Linux 环境变量 bash shell 使用环境变量来存储 shell 会话和工作环境的相关信息(这也是被称作环境变量的原因).环境变量允许在内存中存储数据, 以便 shell 中运行的程序或 ...
- Linux编程 9 (shell类型,shell父子关系,子shell用法)
一. shell类型 1.1 交互式 bin/ shell程序 当用户登录到某个虚拟控制台终端或是在GUI中启动终端仿真器时,默认的shell程序就会开始运行.系统启动什么样的shell程序取决于你 ...
- Linux中shell运行方式,linux脚本中父shell与子shell 执行的几种方式
本文主要介绍以下几个命令的区别: shell subshell source $ (commond) `commond` Linux执行Scripts有两种方式,主要区别在于是否建立subshell ...
- linux 命令行与shell脚本编程大全
linux 命令行与shell脚本编程大全 第一章 Linux LiveCD就是从cd读取的系统,由于没法将数据写入到cd,所以一旦重启,之前操作过后的一切数据都会丢失. 第二章 第三章 1.man手 ...
最新文章
- linunx获取命令帮助
- html5中的图片的location,HTML5中的History和Location对象
- C++函数调用运算符重载
- 设计高效sql一般经验谈
- 使用ifconfig取出网卡eth0的ip地址
- 东北大学计算机分数线2017,东北大学2017年艺术类专业录取分数线
- mybatis源码分析执行流程
- LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话(简单易懂)
- python实现文本翻译
- ftl生成word文档
- html中超链接使用_html超链接有哪些类型 html中,超链接用的是什么标签
- Java:实现动态规划的4个经典题型,你都会吗?拒绝做优秀的码农
- [科普] 狭义相对论
- ZoomIt使用方法详解
- 【朝花夕拾】Lint使用篇
- .net 生成拼音码与五笔码
- 岛屿最大面积 leetcode Java_【Leetcode刷题】岛屿的最大面积
- 给自己一个拼搏的理由
- 身为程序员,就应该了解微服务的未来发展趋势:云原生应用架构
- Azure Synapse Analytics (Azure SQL DW)性能优化指南(4)——使用结果集缓存优化性能