命令在脚本(或-c)中有效,但在直接运行时(在交互式shell中)则无效

相信

这有效:

$ bash -c 'while true; do echo foo; sleep 1; done'
foo
foo
...

但这不是:

$ while true; do echo foo; sleep 1; done
bash: syntax error near unexpected token `done'

我看到与zsh相同的问题:

zsh:解析“ done”附近的错误

注意:破折号有效。

chi地

像这样的问题经常被人们误解,因为很少有人意识到aliases在非交互式shell已被禁用。

在您的情况下,这是一个do导致问题的别名

要研究类似的问题,通常可以使用以下方法启动一个新的shell:

HOME=/tmp $shell

然后再试一次。这样可以避免交互式外壳读取启动脚本。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ffmpeg命令在脚本内静默失败,但在直接运行时有效

来自分类Dev

代码在脚本编辑器中有效,但在从命令行运行时无效

来自分类Dev

此命令在终端中有效,但在Shell脚本中无效

来自分类Dev

运行 Bash 脚本时找不到命令,但直接运行命令时有效

来自分类Dev

命令在终端中有效,但在bash脚本中无效

来自分类Dev

脚本在 CodeCademy 中有效,但在命令行中无效

来自分类Dev

为什么我的 vba 脚本在逐行执行时(在调试中)有效,但在运行时无效?

来自分类Dev

您如何有效地使用“脚本”命令来记录交互式外壳?

来自分类Dev

您如何有效地使用“脚本”命令来记录交互式外壳?

来自分类Dev

代码在终端中有效,但在脚本中无效

来自分类Dev

导出变量在终端中有效,但在 shell 脚本中无效

来自分类Dev

为什么此命令“google-auth”在终端中有效,但在 bash 脚本中无效?

来自分类Dev

git clone在git shell中有效,但在Windows命令行中无效

来自分类Dev

Xclip命令在Shell中有效,但在键盘快捷方式中无效

来自分类Dev

命令在“运行”中有效,但在“ CMD”或“呼叫外壳”中无效

来自分类Dev

为什么这组apt命令在逐行运行时有效,而在作为脚本运行时却无效?

来自分类Dev

!(*。sh)在命令行上有效,但在脚本中无效

来自分类Dev

Linux。为什么我的 Linux 命令在终端上有效,但在脚本中无效

来自分类Dev

Ubuntu-“ sudo iptables”命令在终端中有效,在bash脚本中无效

来自分类Dev

在命令行上解析有效,但在shell脚本中失败

来自分类Dev

通过外壳脚本执行时,echo $ HISTSIZE不打印,但在命令行中有效

来自分类Dev

echo 命令在手动执行时有效,但在作为 bash 脚本插入时无效

来自分类Dev

从shell脚本运行ant命令

来自分类Dev

期望脚本运行shell命令

来自分类Dev

bash脚本中的命令无效

来自分类Dev

此tar命令在命令行上有效,但在脚本中失败

来自分类Dev

〜/ .bashrc中的脚本在手动执行时有效,但在其他情况下则无效

来自分类Dev

Shell脚本中的Basename命令

来自分类Dev

Shell脚本中的Grep命令

Related 相关文章

  1. 1

    ffmpeg命令在脚本内静默失败,但在直接运行时有效

  2. 2

    代码在脚本编辑器中有效,但在从命令行运行时无效

  3. 3

    此命令在终端中有效,但在Shell脚本中无效

  4. 4

    运行 Bash 脚本时找不到命令,但直接运行命令时有效

  5. 5

    命令在终端中有效,但在bash脚本中无效

  6. 6

    脚本在 CodeCademy 中有效,但在命令行中无效

  7. 7

    为什么我的 vba 脚本在逐行执行时(在调试中)有效,但在运行时无效?

  8. 8

    您如何有效地使用“脚本”命令来记录交互式外壳?

  9. 9

    您如何有效地使用“脚本”命令来记录交互式外壳?

  10. 10

    代码在终端中有效,但在脚本中无效

  11. 11

    导出变量在终端中有效,但在 shell 脚本中无效

  12. 12

    为什么此命令“google-auth”在终端中有效,但在 bash 脚本中无效?

  13. 13

    git clone在git shell中有效,但在Windows命令行中无效

  14. 14

    Xclip命令在Shell中有效,但在键盘快捷方式中无效

  15. 15

    命令在“运行”中有效,但在“ CMD”或“呼叫外壳”中无效

  16. 16

    为什么这组apt命令在逐行运行时有效,而在作为脚本运行时却无效?

  17. 17

    !(*。sh)在命令行上有效,但在脚本中无效

  18. 18

    Linux。为什么我的 Linux 命令在终端上有效,但在脚本中无效

  19. 19

    Ubuntu-“ sudo iptables”命令在终端中有效,在bash脚本中无效

  20. 20

    在命令行上解析有效,但在shell脚本中失败

  21. 21

    通过外壳脚本执行时,echo $ HISTSIZE不打印,但在命令行中有效

  22. 22

    echo 命令在手动执行时有效,但在作为 bash 脚本插入时无效

  23. 23

    从shell脚本运行ant命令

  24. 24

    期望脚本运行shell命令

  25. 25

    bash脚本中的命令无效

  26. 26

    此tar命令在命令行上有效,但在脚本中失败

  27. 27

    〜/ .bashrc中的脚本在手动执行时有效,但在其他情况下则无效

  28. 28

    Shell脚本中的Basename命令

  29. 29

    Shell脚本中的Grep命令

热门标签

归档