系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
dbcafe
- 帖子: 44
- 注册时间: 2011-01-15 12:54
#1
帖子
由 dbcafe » 2012-02-09 9:48
比如这样一个脚本文件
代码: 全选
#!/bin/bash
sleep 30
echo oooo
在执行后,sleep的30秒期间把
改为
并保存,是不会有效果的。
怎样让这种效果实时地反映在脚本执行上呢?
Windows批处理貌似是可以的,bat文件会记住下一条语句的文件偏移量,修改正在执行语句之后内容是立即有效的。
Linux应该能做到这种效果吧,我觉得Win能做到的Linux都能做到

。
-
fhmdgxs
- 帖子: 3
- 注册时间: 2009-05-11 16:00
#2
帖子
由 fhmdgxs » 2012-02-09 10:03
1.写两个shell
a.sh
sleep n; sh ./b.sh
b.sh
echo oooo
-
老蒋
- 帖子: 52
- 注册时间: 2007-01-21 15:48
- 来自: 四川
#3
帖子
由 老蒋 » 2012-02-09 10:08
dbcafe 写了:比如这样一个脚本文件
代码: 全选
#!/bin/bash
sleep 30
echo oooo
在执行后,sleep的30秒期间把
改为
并保存,是不会有效果的。
怎样让这种效果实时地反映在脚本执行上呢?
Windows批处理貌似是可以的,bat文件会记住下一条语句的文件偏移量,修改正在执行语句之后内容是立即有效的。
Linux应该能做到这种效果吧,我觉得Win能做到的Linux都能做到

。
这个和Linux没有关系。
shell和powershell运行机制有差别。
bash运行脚本前会把脚本全部读到内存,所以你修改脚本不会对内存的产生影响。
-
dbcafe
- 帖子: 44
- 注册时间: 2011-01-15 12:54
#4
帖子
由 dbcafe » 2012-02-09 10:12
fhmdgxs 写了:1.写两个shell
a.sh
sleep n; sh ./b.sh
b.sh
echo oooo
谢谢先

这个我也想过,但任务一多就很麻烦了。难道只能用专门的任务调度工具了?
我不想用盗版WinXP,只是被工行网银逼。
-
dbcafe
- 帖子: 44
- 注册时间: 2011-01-15 12:54
#5
帖子
由 dbcafe » 2012-02-09 10:15
老蒋 写了:
这个和Linux没有关系。
shell和powershell运行机制有差别。
bash运行脚本前会把脚本全部读到内存,所以你修改脚本不会对内存的产生影响。
这就是说没戏了?
我不想用盗版WinXP,只是被工行网银逼。
-
懒蜗牛Gentoo
- 论坛版主
- 帖子: 7362
- 注册时间: 2007-03-02 17:36
- 系统: Linux Mint
#6
帖子
由 懒蜗牛Gentoo » 2012-02-09 10:33
说说你的具体需求?我相信你的需求并不需要用这种另类的方法实现的
-
fhmdgxs
- 帖子: 3
- 注册时间: 2009-05-11 16:00
#7
帖子
由 fhmdgxs » 2012-02-09 10:35
其实你这个逻辑不对。。你要是改好多处, 在一个文件跟在多个文件差不多
我还有一些换汤不换药的笨办法
比如
code.sh
代码: 全选
if [ "$rflag" == "first" ]
then
while ture
do
rflag=child ./code.sh
sleep n
done
fi
echo "string"
rflag=first ./code.sh 这样执行
-
dbcafe
- 帖子: 44
- 注册时间: 2011-01-15 12:54
#8
帖子
由 dbcafe » 2012-02-09 13:26
懒蜗牛Gentoo 写了:说说你的具体需求?我相信你的需求并不需要用这种另类的方法实现的
需求么,就是有比较大批量的任务,科学计算那种,计算的指令执行一次要四五个小时,要计算的东西又会偶尔临时调整(增删,调整顺序什么的),在win下边用bat感觉还比较顺手,但shell提交了就不能更改了
我不想用盗版WinXP,只是被工行网银逼。
-
dbcafe
- 帖子: 44
- 注册时间: 2011-01-15 12:54
#9
帖子
由 dbcafe » 2012-02-09 13:29
fhmdgxs 写了:其实你这个逻辑不对。。你要是改好多处, 在一个文件跟在多个文件差不多
我还有一些换汤不换药的笨办法
比如
code.sh
代码: 全选
if [ "$rflag" == "first" ]
then
while ture
do
rflag=child ./code.sh
sleep n
done
fi
echo "string"
rflag=first ./code.sh 这样执行
看不懂呀,first 和 child 是什么呢? Google也没找到
我不想用盗版WinXP,只是被工行网银逼。
-
lotutu
- 帖子: 730
- 注册时间: 2010-12-23 16:29
- 来自: 北京
#10
帖子
由 lotutu » 2012-02-09 22:32
把数据和代码分开怎样?