为什么我无法在终端运行该程序?

为什么我无法在终端运行该程序?

Ubunntu 16.04 全新更新。

drwxrwxr-x  5 piotr piotr   4096 sep 14 02:59 platform-tools
-rw-r--r--  1 piotr piotr  17408 aug 16 13:09 PrimaryGPT.gpt
-rwxr-xr-x  1 piotr piotr 201204 júl 15  2016 qflash
-rw-r--r--  1 piotr piotr 358048 jan 15  2015 sbl2_tmp.mbn
drwxr-xr-x  3 piotr piotr   4096 feb 27  2020 sdat2img

piotr@piotr-Ex:~/lg$ qflash
qflash: command not found

在此处输入图片描述

答案1

与 Windows 不同,Linux 默认不会从当前目录运行可执行文件。您可以通过添加到.来启用此行为$PATH,但这会带来额外的安全隐患,因此我建议不要这样做。

要调用不在的可执行文件,$PATH您必须明确指定路径。除了文件名之外,还要输入文件的路径。假设您位于~/lg文件所在的位置,则该路径为./qflash.始终指当前目录)。

例如,如果您在 中~,则可以调用lg/qflash(相对路径)或~/lg/qflash(绝对路径 - 独立于当前目录)。但这可能并不总是有效,因为某些程序会使用您当前所在的目录。

相关内容