【问题标题】:How to run linux command without extension如何在没有扩展名的情况下运行linux命令
【发布时间】:2014-12-07 20:26:56
【问题描述】:

我正在安装数据管理软件,作为其中的一部分,我必须提取 .tar.gz 文件等,这不是问题。第一次提取后,目录中现在多了两个 .tar.gz 文件,还有我认为是 bash 命令文件或类似的文件。它被称为“xyinstal”。使用 ls -ltr 时,此安装没有文件扩展名,我不知道如何使用此安装功能来安装最后两个 .tar.gz 文件。当我VI这个文件时,很明显它是一个程序文件,以便自动解压缩传递给它的文件,并安装。我只是不知道怎么称呼它。帮助手册说这两个 tar 文件不能手动解压,但安装功能必须“运行”。我所做的一切似乎都不起作用。

有什么建议吗?

【问题讨论】:

  • 你试过运行 xyinstall 吗? >.xyinstall
  • 是的。它说找不到命令。
  • 我的意思是 ./xyinstall 对不起。
  • 阅读下面的cmets。
  • 在文件内容之上设置了什么解释器?应该有类似 #!/bin/bash 或 #!/bin/ksh...

标签: linux bash shell installation


【解决方案1】:

我猜你没有脚本的可执行权限。

您可以执行以下操作以授予可执行权限,然后运行它:

chmod +x ./xyinstal
./xyinstal

或使用 korn shell 运行如下脚本:

ksh ./xyinstal

【讨论】:

    【解决方案2】:

    你想调用

    ./xyinstal
    

    从命令行。请注意,我假设它实际上是 xyinstal,最后只有一个 l

    除非它是可执行的,否则您将无法执行此操作,但请先尝试此操作。

    另外,运行

    file xyinstal
    

    在运行之前确定它是什么类型的文件。

    【讨论】:

    • 这不起作用。它说“没有这样的文件或目录”
    • 那么要么你在错误的目录中,要么它不是一个可执行文件。在运行它之前,您可能需要chmod a+x xyinstal
    • 我运行了 xyinstal 文件,它说它是“korn shell 脚本文本可执行文件”。
    • 您可以尝试 >bash xyinstall 甚至从 korn shell 运行它:>ksh xyinstall 取决于您的操作系统和配置
    【解决方案3】:

    所以我发现了问题。如果我指定我在一个全新的 VM 上执行所有这些操作,可能会更清楚。问题是这是一个 Korn Shell 脚本,我没有在这个版本的 linux 上安装 Korn Shell。一个简单的yum install ksh 允许我安装 Korn Shell,然后 ./xyinstal 工作。感谢大家的回答和帮助。

    问候

    【讨论】:

      【解决方案4】:

      只需执行chmod +x xyinstal 使文件可执行,然后执行./xyinstal

      【讨论】:

        【解决方案5】:

        当你面对这种未知文件时,我建议你从file 命令开始,它会猜测文件的类型(不依赖扩展名):

        $ file xyinstal
        xyinstal: ASCII text
        

        如果这是一个文本文件(file 命令没有给你更多信息),你有可能在第一行找到调用它的程序的名称:

        $ head -n1 xyinstal
        #!/usr/bin/ksh
        

        这一行(shebang)告诉你的 shell 当你执行./xyinstal 时它应该使用什么程序来执行文件(授予你执行权限)。看一看就知道是shell脚本,python还是别的什么的。

        【讨论】:

          猜你喜欢
          • 2021-08-25
          • 2014-04-05
          • 1970-01-01
          • 1970-01-01
          • 2021-12-05
          • 2017-07-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多