bash脚本 - > ps不读取脚本中的命令启动

时间:2015-11-01 22:49:05

标签: bash shell parallel-processing ps

我想了解为什么当我在终端中执行以下命令时,它可以工作,但是当我运行脚本时它不会

我在终端中运行它时的命令

./tparente & ps --no-headers -C tparente -o rss,vsz >> "mem_results"

mem_result文件中写入了rss和vsz。 我通过终端运行它时的命令略有修改,它写成如下:

sh ~/Documents/tparente & ps --no-headers -C tparente -o rss,vsz >> "mem_results"

有一个echo命令在上述命令之前在mem_results中写入一些文本,这些是有效的。 如果我删除no header标志,它会在文件中写入标题但不是结果。

我知道脚本已运行,因为它最终生成了一个文件。 这已经困扰了我几个小时了。

谢谢 亚历克斯。

1 个答案:

答案 0 :(得分:0)

我想我可能找到了答案。

尝试了几个命令行配置后:这个可以工作:

./tparente & ps --no-headers -C tparente -o rss,vsz >> "mem_results"

区别很微妙(没有“sh”) 这一行来自剧本;我注意到的是,当我尝试在其上运行脚本并在另一个终端中运行ps命令时,tparente进程就在那里。我不知道为什么,但是我的直觉告诉我要删除sh,我做了,它有效。

如果有人有正确的解释,请继续:)