有没有一种方法可以使文件在单击时运行终端命令?


14

有没有一种方法可以使文件在单击时运行终端命令?类似于Windows中的.bat扩展名?

Answers:


32

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


1
出于好奇..你用什么来录制和发布动画来那样?
2012年

6
拜占士(Byzanz;)如果您仔细观察,可以看到我byzanz-record在动画开始时最小化了一个终端窗口。
RobinJ 2012年

4
+1,那些动画gif非常漂亮,可以很好地回答。
psusi'2

1
拜占士酷!!!!
2012年

1
你好,我只是按照您的步骤操作,但是当我双击文件时,它仅打开getedit编辑器,请帮助
Roel

8

在Linux中,这些称为更准确的Shell脚本的脚本。

Linux不在乎文件的扩展名,它会查看文件的权限以查找文件是否设置为可执行文件,如果可以,则将其运行。

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

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

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

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

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

学习Linux Shell脚本的一个很好的开始是LinuxCommand.org,它们教您所需的知识,如何做,并提供了许多有关脚本的好的示例,您可以看一下。


1

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

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

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

在此处输入图片说明

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.