0

我正在使用 octave 来创建和执行脚本。脚本文件已成功创建,但只有在我从 shell 执行时才能正确执行。

例如,如果我创建包含这一行的脚本文件

for L in {1..5}; do > ${L}.txt; done    

从 shell 调用它会创建 5 个文件,但从 octave 调用它(使用 system("./myscript.sh"); 或 unix("./myscript.sh"); )它只创建一个名为 "{1. .5}.txt"

我的实际目的不是创建空文件,以上只是一个示例。在我的脚本中,我使用了无法从八度音阶执行的 for 循环。

4

1 回答 1

1

试试“ps -f”看看你的“myscript.sh”是在哪个shell下执行的。

尝试在第一行添加严格/强制的 shell 说明符,告诉它在 bash 下运行。

例如

#!/bin/bash
ps -f
for L in {1..5}; do > ${L}.txt; done
于 2013-09-25T12:45:59.240 回答