我正在尝试运行 Foxitreader。我已经在上面运行了 tar。但是为什么我需要执行安装 为什么我必须在下载中运行以“./”开头的文件?这意味着什么?
./FoxitReader.enu.setup.1.1.0.0225(r205262).x64.run
答案1
Foxit 将其 Foxit PDF 阅读器作为压缩档案进行分发(文件结尾为 .tar.gz:.tar 表示它是档案,.gz 表示它是压缩的)。
解压该文件后,您将获得此 .run 文件。这是一个可以在命令行上执行的二进制文件。前缀./
告诉您的 shell 在当前目录中查找文件,因为 是.
“当前目录”的标识符。您可以使用命令检查您所在的目录pwd
。
答案2
答案3
与Windows相比,该tar
文件只是一个存档,就像zip
是一样。
所以您所做的就是从存档中解压缩可执行文件。这就像解压一个.zip
文件来获取一个.exe
文件在 Windows 上。
但是,就像在 Windows 上一样,在这里你需要运行可执行文件实际上跑步该程序。
您可以运行此可执行文件(保存在当前文件夹中)./FoxitReader.enu.setup.1.1.0.0225(r205262).x64.run
。再次,这相当于运行一个exe文件。
对于这个问题:“为什么我需要./
运行可执行文件?” - 你并不总是需要它。
例如,当您键入ls
或cp
其他内容时,您会运行一个可执行文件。问题是,终端需要知道在哪里找到这个程序。
默认情况下,当您不键入可执行文件的路径时,终端会在配置的文件夹中搜索它。
因此,当您输入 时ls
,终端:
- 看到命令没有指定在
ls
哪里 $PATH
在使用变量(设置)定义的文件夹中查找- 发现
ls
/bin/ls
- 运行它
但是,该$PATH
设置中通常不包含当前目录。这意味着您必须写入可执行文件的路径,并且当前文件夹有一个特殊的名称.
,就像父文件夹一样..
。
如果没有指定 FoxitReader“exe”位于当前(或不同的目录)[带有./
或Downloads/
等等],它将找不到它并且不会运行它。