Jenkins - Выполнять sh команды с определенными специальными символами - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь использовать команду Jenkins sh, которая выглядит следующим образом:

find ./somedir -type f -name .pdf -exec mv {} ./someotherdir/scan.pdf \;

(Это работает на обычной оболочке bash)

Но в Jenkins, когда я use:

sh 'find ./somedir -type f -name .pdf -exec mv {} ./someotherdir/scan.pdf \\;'

Это интерпретирует это как:

find ./somedir -type f -name .pdf -exec mv '{}' ./someotherdir/scan.pdf ';'

Я пробовал много разных вещей, чтобы избежать этого должным образом, и я просто не могу понять это ...

Приведенные в другом месте примеры в Интернете, похоже, не работают или я их не понимаю.

1 Ответ

0 голосов
/ 30 апреля 2020

В конце концов, этот тип подхода работал для меня с sh в Дженкинсе. Как пользователь упоминает выше, иногда дополнительная кодировка не повредит. Я поделюсь последней командой, с которой я начал работать:

sh 'find ./temptest -type f -name "* .pdf" -exe c mv {} ./temptest/scan. pdf ";" '

Обратите внимание, что у меня подстановочный знак в "" и; в ""

Надеюсь, это поможет кому-то еще!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...