gpt4 book ai didi

Bash:语法错误:意外重定向

转载 作者:行者123 更新时间:2023-11-29 08:38:36 25 4
gpt4 key购买 nike

我在脚本中这样做:

read direc <<< $(basename `pwd`)

我得到:

Syntax error: redirection unexpected

在 ubuntu 机器上

/bin/bash --version
GNU bash, version 4.0.33(1)-release (x86_64-pc-linux-gnu)

虽然我在另一台 suse 机器上没有得到这个错误:

/bin/bash --version
GNU bash, version 3.2.39(1)-release (x86_64-suse-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.

为什么会出错?

最佳答案

您的脚本是否引用 /bin/bash/bin/sh在它的哈希爆炸线? Ubuntu 中的默认系统 shell 是 dash , 不是 bash , 所以如果你有 #!/bin/sh那么您的脚本将使用与您预期不同的 shell。 Dash 没有 <<<重定向运算符。

确保 shebang 行是:

#!/bin/bash

#!/usr/bin/env bash

然后运行脚本:

$ ./script.sh

不要使用明确的 sh 运行它因为那会忽略 shebang:

$ <del>sh ./script.sh</del>   # Don't do this!

关于Bash:语法错误:意外重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2462317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com