mirror of
https://github.com/acmesh-official/acme.sh.git
synced 2026-08-13 12:33:30 +02:00
installcronjob: Solaris grep takes only one -e, use separate greps
The "no crontab" whitelist used multiple -e patterns, but Solaris /usr/bin/grep honors only a single -e, so a fresh install was refused there. Use one plain grep per message pattern, which every grep implementation supports (caught by le_test_installcronjob_no_wipe on the Solaris CI).
This commit is contained in:
parent
d621d6952a
commit
17964cfd6e
1 changed files with 5 additions and 3 deletions
8
acme.sh
8
acme.sh
|
|
@ -7011,9 +7011,11 @@ installcronjob() {
|
|||
#failure must abort: piping an incomplete list back into 'crontab -'
|
||||
#would wipe the user's existing cron jobs (issue 3079)
|
||||
_cron_list_err="$($_CRONTAB -l 2>&1 >/dev/null)"
|
||||
#multiple -e instead of \| : BRE alternation is a GNU extension that
|
||||
#BSD grep does not support
|
||||
if echo "$_cron_list_err" | grep -i -e "no crontab" -e "no fcrontab" -e "can't open" >/dev/null; then
|
||||
#separate greps: BRE alternation \| is a GNU extension and Solaris
|
||||
#grep takes only a single -e pattern
|
||||
if echo "$_cron_list_err" | grep -i "no crontab" >/dev/null ||
|
||||
echo "$_cron_list_err" | grep -i "no fcrontab" >/dev/null ||
|
||||
echo "$_cron_list_err" | grep -i "can't open" >/dev/null; then
|
||||
_cron_entries=""
|
||||
else
|
||||
_err "Can not list the current cron jobs: $_cron_list_err"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue