从终端执行 unix 代码

0 mac unix terminal macos

我的硬盘驱动器上有一个目录,其中包含我试图从终端运行的一组 Unix 可执行文件。当我从终端浏览目录时,它显示所有文件都在那里,但是当我输入其中一个 Unix 可执行文件的名称时,它显示“-bash orca:未找到命令”(该可执行文件称为“orca”)。如果我浏览到 finder 中的文件夹并单击同一个文件,则会出现一个终端窗口并运行该文件。但是,因为程序要求我指定一个输入文件,所以我得到以下返回:

/Users/damonrobles/Documents/orca_macosx_r2360/orca ; exit;
Damon-Robless-MacBook-Pro:~ damonrobles$ /Users/damonrobles/Documents/orca_macosx_r2360/orca ; exit;
This program requires the name of a parameterfile as argument
For example ORCA TEST.INP 
logout

[Process completed]
Run Code Online (Sandbox Code Playgroud)

根据程序手册,我应该从终端调用程序如下:

nohup orca Inputfile.inp >& outputfile.out
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,它只会生成一个输出文件,上面写着:

nohup: orca: No such file or directory 
Run Code Online (Sandbox Code Playgroud)

并将我返回到终端提示。我无法弄清楚问题到底是什么,尽管我是终端用户的新手,所以我确定这对我来说是愚蠢的。任何帮助是极大的赞赏!我在运行 OSX 10.6.8 的 MacBook Pro 上。

jtb*_*des 7

你会想要使用./orca而不仅仅是orca. 在 OS X.$PATH,默认情况下当前目录 ( ) 不在其中,因此您无法在未明确命名的情况下执行当前目录中的程序。

  • @Damon Robles:如果你认为你可以将 `.` 添加到 `$PATH`,那是可以的,但这是一个安全风险;它使人们更容易欺骗您执行他们的恶意程序而不是标准程序。所以不要。 (4认同)
  • 在你的 homedir 中总是有一个精心准备的 `sl` 二进制文件,你永远不知道有一天谁会运行它...... (2认同)