Сценарий оболочки - синтаксическая ошибка около неожиданного маркера' ['

Сравните sshd конфигурационные файлы (шахта в /etc/ssh/sshd_config) на старом и новом сервере - что-то настроенное по-другому на новом, например, делает AuthorizedKeysFile опция на новой указывает на некоторый другой файл (я полагаю, что некоторые установки SSH в наше время называют файл authorized_keys2)?

0
23.09.2013, 23:51
2 ответа

Смотря на Вашу ссылку pastebin, Вы отсутствуете esac закончиться case оператор прямо перед проблематичным блоком.

3
28.01.2020, 02:28
  • 1
    JosephR и @slm. Ваши ответы приняты! Добавление esac в конце блока разрешило проблему. –  user2561310 23.09.2013, 18:01
  • 2
    @user2561310 Спасибо. Какой slm подразумевал под принятием, что ответ, однако, должен нажать в кредит кнопку метки под кнопками голосования слева от ответа. Это позволяет, кто-то просматривающий список вопросов знает, что этот вопрос уже имеет действительный ответ без потребности на самом деле нажать на него и прочитать комментарии. –  Joseph R. 23.09.2013, 18:08

Ошибка, скорее всего, происходит перед этим блоком кода. Например, если я поместил этот блок кода в свой собственный сценарий и echo псевдонимы намечают:

#!/bin/bash

# example.bash
if [ -x /usr/bin/dircolors ]; then

    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    echo "alias ls='ls --color=auto'"
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    echo "alias grep='grep --color=auto'"
    echo "alias fgrep='fgrep --color=auto'"
    echo "alias egrep='egrep --color=auto'"

fi

Я получаю это:

$ ./example.bash 
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'

Который указывает, что это прекрасно.

Завершение блока случая

Этот блок не имеет соответствия esac.

case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)

....
0
28.01.2020, 02:28
  • 1
    slm.Спасибо! Да, Вы правы! Посмотрите мой целый bashrc файл сценария в pastebin (ссылка выше). –  user2561310 23.09.2013, 16:54
  • 2
    Добавление esac в конце блока удалило ошибку! –  user2561310 23.09.2013, 17:39
  • 3
    @user2561310 - хороший, примите или мой или ответ JosephR так, чтобы другие знали, что Ваша проблема решила. –  slm♦ 23.09.2013, 17:40

Теги

Похожие вопросы