В общем, это пытается скопировать B, а не его содержимое, в A. Поскольку B уже является подкаталогом A, cp
правильно говорит, что источник и место назначения - это один и тот же файл.
Если вы вместо этого хотите скопировать содержимое B в A, вы хотите:
cp -ar /path/to/A/B/* /path/to/A/
Если A - ваш текущий рабочий каталог, то вместо этого работает следующее:
cp -ar B/* .
В какой-то момент это было реализовано как патч к gnome-terminal, а затем добавлено в VTE (библиотека, которую оба терминала используют почти для всех своих функций).
Например, в 2012 году Стив Зеш отметил в раннем отчете об ошибке для MATE Terminal
Это была функция, которую разработчики Ubuntu исправили в gnome-terminal. Она полагается на исправленную версию vte, которую, опять же, исправили разработчики Ubuntu. Поскольку эти исправления либо не были внесены, либо были отклонены, наша база кода не содержит их. В будущем разработчики Ubuntu должны будут применить эти исправления к mate-terminal.
Другими словами, мы не можем собрать их, потому что не каждый дистрибутив включает исправленную версию vte, которая требуется для этой функции.
А позже, в 2014 году, вы можете увидеть патч, упомянутый в
где Влад Орлов отметил
Что более интересно, патч в gnome-terminal теперь ничего не делает
1, потому что функциональность была добавлена в VTE3 (libvte-2.90-9)
2. Это означает, что альтернативная прокрутка всегда включена и не может быть отключена.1 https://bugs.launchpad.net/bugs/1340067
2 https://git.gnome.org/browse/vte/commit/? id=9f8c1b88dcd880c2d9e78c93521ee755560a9275
Последний был зафиксирован 2013-09-30, чтобы реализовать приватный режим 1007
Ps = 1 0 0 7 -> Enable Alternate Scroll Mode.
который был реализован в xterm в патче #282 (годом ранее: 2012/09/28) для решения проблемы
то есть предоставление опционального метода для реализации функции, о которой сказал пользователь
Это явно хак, но я хочу его.
В коммит-логе VTE не упоминается привязка к xterm, хотя в соответствующем сообщении об ошибке комментарий разработчика говорится
Christian Persch 2012-10-08 21:17:39 UTC
BTW, xterm 282 теперь также реализует это поведение, через новую управляющую последовательность DEC
1007
. [См. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=683942]
Поскольку VTE жестко кодирует начальное значение этой функции в "on", в конечном итоге терминал MATE получит эту функциональность без изменений, когда он будет адаптирован или перестроен для более новых выпусков VTE.
Для справки, версия VTE, которая потребуется, 0.34.9