如何创建和执行脚本文件

Str*_*to1 9 command-line scripts

有没有办法在 Ubuntu 14.04 中创建和执行脚本文件?也许类似于 Windows 批处理文件。具体来说,我指的是 Ubuntu 终端 (Bash) 的默认脚本语言。你如何制作一个包含 bash 命令的文本文件,这些命令将由 Ubuntu 终端从文件顶部到底部运行。

old*_*red 12

您的“shell”或命令行界面称为 bash。您可以编写一个类似于批处理文件的 bash 脚本。bash 脚本以 She-bang 开头,#!/bin/bash只不过是一组按顺序运行以运行它们的命令。您不限于 bash 命令,您可以使用二进制文件或脚本的完整路径调用系统上的任何二进制文件。

关于 learning/books/terminal/bash/Linux 等 Linux 命令行学习资源的主线程 - cortman https://help.ubuntu.com/community/CommandLineResources

我的第一个 bash 是我在终端中多次运行的几个命令。所以我用 history 命令列出了历史并将它们复制到文本文件中。第一行必须是这个(它和第一行之前没有空格):

#!/bin/bash
Run Code Online (Sandbox Code Playgroud)

保存后,您必须使其可执行。

sudo chmod +x <path>
sudo chmod 755 <filename>
Run Code Online (Sandbox Code Playgroud)

请注意,将脚本放在一个地方是个好主意,这样您就可以在不需要路径的情况下运行它们。如果您下次登录时在您的家中创建一个 bin 目录 ( mkdir ~/bin ),它将自动包含在您的 PATH 中。

mkdir ~/bin
chmod 755 ~/bin
Run Code Online (Sandbox Code Playgroud)

编辑:如果您希望所有用户都可以使用该脚本,请将其放在 /usr/local/bin 中,并由 root 拥有,其他人具有 rx 访问权限 sudo chown root:root /usr/local/bin/your_script ; sudo chmod 655 /usr/local/bin/your_script

gksudo gedit ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

将以下内容添加到 .bashrc 的末尾并保存:

if [ -d $HOME/bin ]; then
PATH=$PATH:$HOME/bin
fi
Run Code Online (Sandbox Code Playgroud)