Попытка выполнить команду как

$ 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 ответ1

1

На моей машине Gentoo, выполняющей sdiff (GNU diffutils) 3.7 , 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)")

Кстати, попробуйте в следующий раз поместить код между обратными чертами (`) или тройными обратными чертами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .