有没有办法制作一个文件,当你单击它时它会运行终端命令?

有没有办法制作一个文件,当你单击它时它会运行终端命令?

有没有办法创建一个文件,单击它时会运行终端命令?类似于 Windows 中的 .bat 扩展名?

答案1

打开文本编辑器,输入以下行:#! /bin/bash。留一个空行并开始输入命令。保存文件,扩展名无关紧要。 转到文件管理器中的文件,右键单击它,打开属性对话框,转到对话框中的权限选项卡,选中“允许执行此文件”,然后单击关闭按钮。现在您可以双击该文件并选择在终端窗口中运行它

答案2

在 Linux 中,这些被称为脚本,或者更准确地说是 shell 脚本。

Linux 并不关心文件的扩展名,它将查看文件的权限来确定文件是否设置为可执行文件,如果是的话,它将运行它。

你可以用任何喜欢的文本编辑器创建脚本,只需打开一个并开始编写脚本,你可以使用任何你想要的 shell 解释器作为通常使用的解释器bashsh

#!/bin/bash通常,您通过声明要使用的命令解释器(对于 bash 和对于 sh )来启动脚本#!/bin/sh。完成此操作后,您可以开始在脚本行中键入命令,就像在 Windows 上使用批处理脚本一样。

编辑完成后,保存文件并使其可执行。

您可以打开终端并输入chmod 755 foofoo您的脚本名称在哪里),或者右键单击刚刚创建的文件,然后在权限选项卡上单击使文件可执行

完成后,您可以双击该文件,文件管理器会尝试运行它或询问您是否要运行它。或者,您也可以在终端中调用脚本,将目录更改为脚本所在的位置,然后使用 调用它./foo

学习 Linux shell 脚本的一个好起点是LinuxCommand.org,他们会教你所需要的内容、如何去做,并且在脚本中提供了很多很好的示例供你参考。

答案3

如果它是一个简单的单行命令,您可以创建一个.desktop文件,例如一个简单的复制命令(以最简单的形式):

[Desktop Entry]
Name=Simple Copy
Exec=/bin/bash -c 'cp <source> <destination>'
Type=Application

将命令放在引号之间,用.desktop扩展名保存文件,使其可执行,然后双击运行它。

在此处输入图片描述

您可以使.desktop文件更复杂,添加选项,关键字,设置图标等。
请参阅此链接

相关内容