比较目录时出现语法错误[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

运行以下命令时,我不断收到以下错误:bash - 意外令牌(附近的语法错误。

A=/dev1/annemarie/
B=/home/annemarie/
diff -u <(find "$B" |sed "s:$B::") <(find "$A" | sed "s:$A::") | sed "/^+\//!d; s::$A/:"

要么

diff -u <(find " B=/home/annemarie/" |sed "s: B=/home/annemarie/::") <(find "/dev1/annemarie/" | sed "s:/dev1/annemarie/::") | sed "/^+\//!d; s::/dev1/annemarie//:"

要么

echo "diff -u <(find \"$B\" |sed \"s:$B::\") <(find \"$A\" | sed \"s:$A::\") | sed \"/^+\//!d; s::$A/:\" >> /tmp/$$.sh

问题出在哪儿?

bash
1个回答
2
投票

具有流程替换的脚本必须通过bash运行,而不是sh。确保shebang引用/bin/bash和/或脚本在命令行上传递给bash

© www.soinside.com 2019 - 2024. All rights reserved.