引号内包含另一个命令的 Bash 脚本

引号内包含另一个命令的 Bash 脚本

尝试执行如下命令

$ sdiff -i -W -B -l  -w 140 <(curl -s "https://domain.tld/query.php?d=$(date +%Y%m%d)") <(curl -s "https://domain.tld/query.php?d=$(date --date="yesterday" +%Y%m%d)") 

我正在尝试根据命令自动确定日期date..这里的挑战是该命令位于另一个命令的引号内。

非常感谢您的任何意见。谢谢。

答案1

在我的 Gentoo 机器上,运行sdiff (GNU diffutils) 3.7,将(from )sdiff解释为单独的参数。正确的调用如下:140-w 140

sdiff -i -W -B -l -w140 <(curl -s "https://domain.tld/query.php?d=$(date +%Y%m%d)") <(curl -s "https://domain.tld/query.php?d=$(date --date="yesterday" +%Y%m%d)")

请注意,选项还可以进一步减少一些:

sdiff -iWBlw140 <(curl -s "https://domain.tld/query.php?d=$(date +%Y%m%d)") <(curl -s "https://domain.tld/query.php?d=$(date --date="yesterday" +%Y%m%d)")

顺便说一句:下次请尝试将代码放在反引号(`)或三重反引号之间。

相关内容