我有一个bash脚本,如:
#!/bin/bash
echo Hello world!
Run Code Online (Sandbox Code Playgroud)
如何在终端中执行此操作?
Pau*_*ce. 109
另一种执行它的方法(这次没有设置执行权限):
bash /path/to/scriptname
Run Code Online (Sandbox Code Playgroud)
pro*_*son 39
$prompt: /path/to/script并按Enter键.请注意,您需要确保脚本具有执行权限.
Joh*_*ker 24
cd到包含该脚本的目录,或将其放在$ PATH中的bin文件夹中
然后键入
./scriptname.sh
Run Code Online (Sandbox Code Playgroud)
如果在同一目录或
scriptname.sh
Run Code Online (Sandbox Code Playgroud)
如果它在bin文件夹中.
小智 24
你可以这样做:
sh scriptname.sh
Don*_*ini 11
首先,您必须使用以下命令使其可执行:chmod +x name_of_your_file_script.
在使其可执行后,您可以使用它来运行它 ./same_name_of_your_file_script
小智 9
使用cd命令将目录更改为脚本所在的位置
然后输入
bash program-name.sh
Run Code Online (Sandbox Code Playgroud)
还有一种方法
. /path/to/script
Run Code Online (Sandbox Code Playgroud)
这是一个旧线程,但是我碰巧遇到了这个问题,我很惊讶没有人提出完整的答案。所以这里...
问:如何在终端中执行此操作?
困惑与冲突:
sudo做任何这一点。该命令保留用于以其他用户或“ root”(管理员)用户身份运行命令。这里很棒的帖子。(一个刚学会如何执行脚本的人除非有真正的需要(例如安装新程序),否则不要使用此命令。放置脚本的好地方是〜/ bin文件夹。在终端提示下输入cd ~/bin或cd $HOME/bin。在该文件夹中,您将拥有完整权限。)
要从Unix / Linux类型系统上的终端“执行此脚本”,您必须做三件事:
告诉系统脚本的位置。(选一个)
/path/to/script.sh)。您可以通过在终端中输入pwd或来验证完整路径echo $PWD。./路径(例如./script.sh)。简单。PATH然后键入名称(例如script.sh)。您可以PATH通过键入echo $PATH或echo -e ${PATH//:/\\n}如果需要更整洁的列表来验证系统。告诉系统脚本有权执行。(选一个)
chmod +x /path/to/script.sh在终端中输入来设置“执行位” 。chmod 755 /path/to/script.sh如果您喜欢数字,也可以使用。有一个凉爽的图表的大讨论在这里。告诉系统脚本的类型。(选一个)
BASH /path/to/script.sh或PHP /path/to/script.php),如果脚本具有扩展名,例如.php或.py,则它是脚本名称的一部分,您必须包括该名称。#!/bin/bash在您的示例中看到了()。如果您将其作为脚本的第一行,则系统将使用该程序执行脚本。无需键入程序或使用扩展名。PATH使用,#!/usr/bin/env然后加上程序名称(例如#!/usr/bin/env bash或#!/usr/bin/env python3)来选择该程序的第一个版本。有利弊的深入讨论这里。