|
|

楼主 |
发表于 2006-7-20 00:15:21
|
显示全部楼层
Post by pluskid
回答一些我懂的吧:
1. 不太懂你什么意思,也许可以试试 killall 命令
2. FOO=`pwd`
3. $$ 表示当前脚本执行时候的进程 pid 号吧
4. sed -i 's%\.%/mnt/e/music%' foo.txt 可以替换每一行第一个碰到的"." ,使用sed -i 's%\.%/mnt/e/music%g' foo.txt 可以替换所有的 . ,但我觉得这可能不是你想要的。
5. 每个 shell 有自己的环境,子进程会继承父进程的环境,但是如果是两个平等或者无关的进程,那么他们之间的环境变量不能那样共享。要让下次开机环境变量还在,就把他写入你的shell的初始化文件中,例如 bash 可以写入 ~/.bashrc
6. cat foo1.txt foo2.txt foo3.txt > foo.txt
7. 要看你要的是纯空行还是空白行了。如果只是空行,可以用 sed -i "/^$/d" foo.txt ,如果是要空白行可以用 sed -i "/^[[:space:]]$/d" foo.txt
pluskid兄,先谢谢你了。你用的sed让我花了一个小时看网上的文档,但斩获颇丰。
下面是我的见解:
1,我的表述能力有限,没说清楚。我所要说的是:如何在一个脚本中杀死一个应用程序,
比如,mplayer?
2, 这个我也试过,但已失败告终,最后echo的结果还是pwd本身。
3,你说的话启发了我,$$代表的是所运行的bash的pid.
4, sed 真是太棒了!但是它是流编辑器,不能改变源文件。虽然可以管道输出文件,但总
感觉不太爽。有没有其它办法在原文件上修改的?
5,我的系统是 SuSE10.1,默认情况下没有 ~/.bashrc,也不知道有用没?但我明天起床后 试试。
6,cat 可以把文本文件合并到一块,但如果我拆开的是一个bin文件呢?(也不知道使用 split拆bin文件有效不?)
7,同4。
再次感谢pluskid兄的赐教! |
|