shell脚本执行过程中发生了修改,会怎样?

everysmile 2013-06-05 07:25:13
shell脚本应该是解释性执行,那么:
如果一个shell脚本还没有执行完成时,对shell脚本进行了修改,会产生什么后果呢?
1,脚本会从当前执行的位置后按照修改的脚本内容执行;
2,脚本依旧按照修改之前的脚本内容执行完成脚本;

高手来确定一下1 or 2?
...全文
4096 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
XanaduT 2013-07-12
  • 打赏
  • 举报
回复 2
这个得取决于脚本大小和解释器的工作方式吧
赵4老师 2013-07-03
  • 打赏
  • 举报
回复 1
亲测windows下cmd中运行bat时修改bat内容是1
everysmile 2013-06-27
  • 打赏
  • 举报
回复 1
不好意思,一直没有来更新,个人测试的结果如下: 1)a.sh已经被执行的过程中,修改a.sh不会影响a.sh的执行,但是: 如果a.sh中进一步地调用了b.sh,并且你修改的时间点在调用b.sh那句语句之前(例如多次循环调用b.sh),则你修改了b.sh会对于a.sh的执行结果造成影响,a.sh会按照你修改后的内容来调用执行b.sh。 不知道我的测试结果是否正确,请大神指正。
szqh97 2013-06-14
  • 打赏
  • 举报
回复
你自己试下啊,正在执行的就不会变了,还没有执行的就按修改以后的执行了
www_adintr_com 2013-06-11
  • 打赏
  • 举报
回复
还有 3. 文件被使用, 不能修改脚本.
linux-c 2013-06-09
  • 打赏
  • 举报
回复
果断2,你认为呢?
panghuhu250 2013-06-09
  • 打赏
  • 举报
回复 3
取决于解释器怎么执行: - 逐行读入,执行,不用buffer 1 - 全部读入,编译再执行 2 - 逐行读入,执行,但用buffer -- 小文件 2 -- 大文件 1

37,744

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧