2012-11-26 119 views
41

我在txt文件中有一些命令,我​​需要逐行执行它们。我怎么能这样做?从txt文件运行bash命令

+12

怎么样'庆典file.txt'? –

+1

可能重复[ubuntu运行文本文件作为命令](http://stackoverflow.com/questions/9825495/ubuntu-run-text-file-as-command) – mido

回答

67

只是做bash file

$ cat file 
date 
echo '12*12' | bc 

$ bash file 
Mon Nov 26 15:34:00 GMT 2012 
144 

别名的情况下只运行bash -i file

无需担心文件扩展名或执行权。

+0

这与原生命令,但我有一个*别名*存储在我的文件中,这种方式不起作用。我得到错误:“没有命令'mycm'找到...”。有没有另一种方式呢? –

+1

@HankPhung'bash -i文件' –

13

在终端只需键入:

bash path/to/my/file.txt 

,你会得到各行执行。

-4

只需更改文件的扩展名的文件

变化开始的.sh

添加/斌/ bash的文件的权限可执行

,那么运行./命令行中的filename.sh命令。该文件中的所有命令将被执行

+0

如果谁提出这个问题并不是如何执行存储在一个文件中的命令,我怀疑他能够在没有任何额外解释的情况下重新命名或更改权限。 –

+0

如果他需要执行命令,那么他显然知道关于命令行的一些信息(虽然我不认为他知道shell非常糟糕)。我觉得在贝壳工作是一个巨大的美丽和不错的。我告诉了他关于shell编程的基础知识。在stackoverflow中,一些编码一直都很顺利。那么如果我说他在shell中的编码,那么出了什么问题?为什么选择dwnvote? –

-3

改变扩展的.sh和第一线#!/usr/bin/env bash和别人说chmod +x

+3

更改扩展名并不重要也不相关。 –