【问题标题】:Run bash commands from txt file从 txt 文件运行 bash 命令
【发布时间】:2012-11-14 02:42:18
【问题描述】:

我在 txt 文件中有一些命令,我​​需要逐行执行所有命令。我该怎么办?

【问题讨论】:

标签: linux file bash


【解决方案1】:

只要bash file:

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

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

如果是别名,只需运行bash -i file

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

【讨论】:

  • 这适用于本机命令,但我有一个 alias 存储在我的文件中,这种方式不起作用。我收到错误:“找不到命令 'mycm' ...”。还有其他方法吗?
  • @HankPhung bash -i file
【解决方案2】:

在终端中输入:

bash path/to/my/file.txt

您将执行每一行。

【讨论】:

    【解决方案3】:

    只需将文件的扩展名更改为 .sh

    在文件开头添加 /bin/bash

    将文件权限改为可执行

    而不是简单地在命令行中运行 ./filename.sh 命令。文件中的所有命令都会被执行

    【讨论】:

    • 如果提出问题的人不知道如何执行存储在文件中的命令,我怀疑他是否能够在没有任何额外解释的情况下重命名或更改权限。
    • 如果他需要执行命令,那么显然他对命令行有所了解(尽管我不希望他对 shell 非常了解)。我认为在 shell 中工作是一种巨大的美丽和美好。我告诉他有关 shell 编程的基础知识。在stackoverflow中,一些编码总是很受欢迎。那么如果我说他关于shell中的编码,那有什么问题?为什么要投反对票?
    【解决方案4】:

    将扩展名更改为 .sh 和第一行 #!/usr/bin/env bash 和其他人所说的 chmod +x

    【讨论】:

    • 更改扩展名并不重要也不相关。
    猜你喜欢
    • 2018-06-15
    • 2022-01-25
    • 1970-01-01
    • 2014-07-31
    • 2017-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-11
    相关资源
    最近更新 更多