Указатель события истории !!
заменяется последней командой в Вашей истории. Bash сначала распечатывает команду, как это будет выполняться, затем выполняет его.
Пример:
$ foo
foo: command not found
$ !!
foo # command to be executed
foo: command not found # result of execution
В Вашем случае:
$ echo !
!
$ echo !!
echo echo ! # command to be executed
echo ! # result of execution
$ echo !!!
echo echo echo !! # command to be executed
echo echo !! # result of execution
Обратите внимание, что команда с указателем события не вставляется в историю, как введено. Сначала указатель события расширен, и затем команда вводится в историю. Именно поэтому в третьей команде (echo !!!
), указатель события не заменяется echo !!
(введенная вторая команда), но echo echo !
(расширенная вторая команда).
Вот последняя команда снова с замененной выделенной частью:
$ echo (!!)!
echo (echo echo !)! # command to be executed
echo echo !! # result of execution
Инструменты как scp
и rsync
может запутаться, если Ваши конфигурационные файлы производят вывод даже для неинтерактивных логинов. Удалите то, что распечатывает Sourcing /root/.profile-EIS.....
. Это находится, вероятно, в Вашем ~/.bashrc
: странно, удар загружает этот файл для невхода в систему интерактивные оболочки и для неинтерактивных оболочек входа в систему, родитель которых rshd
или sshd
.
Sourcing /root/.profile-EIS
сообщение от установки назад в день с профессиональной сервисной командой Sun. Возможности - Вы, не должен нуждаться в том полученном файле. – sleepyweasel 28.12.2016, 21:29