关于bash的执行过程

今天在chinaunix上面看到一个帖子。
#! /bin/sh
a=b echo $a
echo $a

这个脚本的执行结果是什么?为什么?

看似简单,短短的两行代码。一个赋值,两个echo。但是运行的结果和我想得就

很不一样。想着应该要输出一个b,但是实际上。。。。两个空行。

多少人讨论了,都没有一个正确的结果,最后还是 网中人 大牛给了一个解释。

我到现在还是有点意思很清楚。。。

他说的几个概念,命令的重组,扩展。。。等等。。。

看样子真好仔细好好学习了。不能这样装明白下去了。一定学习东西都时候仔细

研究,很多看似简单的东西都有很复杂的理论知识。

回到这个题上,大概先写一下,以后可能还要参考。

a=b echo $a
首先:扩展命令。$a没有赋值,所以这个命令变成 a=b echo

执行这个命令,就是一个空行。这里的a=b,只会影响子shell,不会对全局

shell环境有什么影响。

所以第二个echo $a,还是一个空行。

我现在只能理解这么多了。

网中人 大牛还解释了很多顺序,还不是很理解。先写到这,好好回味下,希望

可以消化好。

这个帖子的地址是:http://bbs2.chinaunix.net/viewthread.php?

tid=1393874&extra=&page=1

转载于:https://blog.51cto.com/jasonyong/168219

关于bash的执行过程相关推荐

  1. linux shell 执行多个文件,/etc/profile、~/.bash_profile等几个文件的执行过程

    关于登录linux时,/etc/profile.~/.bash_profile等几个文件的执行过程. 在登录Linux时要执行文件的过程如下: 在 刚登录Linux时,首先启动 /etc/profil ...

  2. 关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程

    关于登录linux时,/etc/profile.~/.bash_profile等几个文件的执行过程. 在登录Linux时要执行文件的过程如下: 在刚登录Linux时,首先启动 /etc/profile ...

  3. linux下 /etc/profile、~/.bash_profile ~/.profile的执行过程

    关于登录linux时,/etc/profile.~/.bash_profile等几个文件的执行过程. 在登录Linux时要执行文件的过程如下: 在刚登录Linux时,首先启动 /etc/profile ...

  4. redis 启动无输出_Git Bash 中执行交互式命令无响应

    众所周知的原因,Windows下的命令行工具CMD非常难用,所以大家一般用Git Bash作为替代品,但是有时候在其中执行一些命令会出现无响应(无输出结果.无报错信息)的现象,本文将给出该现象的原因及 ...

  5. 分析teamTNT团队Linux挖矿木马执行过程与防范

    分析teamTNT团队Linux挖矿木马执行过程与防范 公司需要扩展海外业务,需要有一台海外云服务器.当我们把应用部署上去时的第二天所有应用down掉了,然后发现ssh连接服务器特别慢.好不容易连接上 ...

  6. linux shell语法检查或者查看shell脚本执行过程的参数介绍及两种使用方法

    shell语法检查或者查看shell脚本执行过程的参数介绍及两种使用方法 一.常用参数概述: set -x 与 set +x 在liunx脚本中可用set -x就可有详细的日志输出,省的老是要echo ...

  7. linux脚本执行过程中被挂起,Linux学习笔记(八)——脚本执行的过程控制

    一.脚本执行过程中的控制 之前的内容中,运行编写好的脚本时都是在命令行上直接确定运行的,并且运行的脚本是实时的,这并不是脚本唯一的运行方式,下面的内容是脚本的其他运行方式.例如在Linux系统中如何控 ...

  8. Linux命令执行过程中的配置文件信息

    命令执行过程 前面讲到过使用 alias 可以建立别名,比如创建了一个 ls 的别名,其实 ls 有少的指令,那么到底是哪一个会被选中执行呢?基本上,指令运行顺序可以这样看: 以相对.绝对路径执行命令 ...

  9. Linux 命令的执行过程/Shell提示符/alias命令

    在 Linux 系统中"一切皆文件",Linux 命令也不例外.那么,当编辑完成 Linux 命令并回车后,系统底层是怎么执行的? 1) 内核层 内核层是 UNIX/Linux 系 ...

最新文章

  1. 机器人c语言教程pdf,机器人卡雷尔学习C语言.pdf
  2. python学习之路基础篇(第四篇)
  3. java sleep方法_百战程序员:java线程的休眠和回复
  4. 分数换算小数补0法_分数怎么化成整数 分数转化方法
  5. Running Trinity in multiple steps
  6. eureka常见错误
  7. php完整表单实例,PHP学习(五) 完整表单实例 HTML内嵌PHP
  8. 打开python文件式_Python File(文件) 方法
  9. 志远电脑公司网站系统
  10. SPSS 24/25/26安装包分享 window和mac版本
  11. keras深度学习之猫狗分类三(特征提取)
  12. OA系统选型,明确需求是关键
  13. 如何在水经注微图中加载地形地貌图进行道路设计
  14. linux如何每30分钟执行指令,CentOS7设置定时任务 每隔30分钟执行一次命令
  15. 用node-koa2-mysql-bootstrap搭建一个前端论坛
  16. uniCloud更新APP
  17. 大学计算机基础模拟系统2014ppt第三,第一章_河海大学:大学计算机信息技术_ppt_大学课件预览_高等教育资讯网...
  18. 侍魂微信新服务器2019,侍魂胧月传说手游2019年5月17日微信问答试炼答案
  19. esp32邮件服务器,ESP32智能家居集线器的制作
  20. ios开发者中心,证书,APPID,配置文件

热门文章

  1. Android开发实践:在任意目录执行NDK编译
  2. linux上源码编译安装mysql-5.6.28
  3. 关于数据中心Tier标准的理解误区
  4. 【ARM】ARM接口技术
  5. 简单例子解释invalidate(), requestLayout() (常用还是需要知道的)
  6. PHP jquery瀑布流特效源码
  7. 域控制器建立以及一般配置
  8. 不改一行代码定位线上性能问题
  9. AIO-3128C四核高性能主板
  10. sysaux表空间数据库块损坏/游离块的修复