Конечные пробелы при копировании с терминала гнома с помощью zsh

Во-первых, считайте передающий ввод текста в отдельный экран. Вам действительно нужно -p направить вход к правильному окну. Кроме того, команда не будет выполняться, пока Вы не наполните новую строку (CR или LF, интерактивная оболочка, работающая в экране, принимает обоих). Это:

screen -p 0 -X stuff "script -a -c 'ls -l' /tmp/command.log$(printf \\r)" &&
cat /tmp/command.log

Существует вторая проблема, которая является что screen -X stuff … команда завершается, как только вход питался в экранную сессию. Но требуется немного времени для выполнения этого script команда. Когда cat /tmp/command.log выполняется, это вероятно это script не закончился; это еще даже, возможно, не запустилось.

Необходимо будет сделать выполнение команды внутри screen произведите некоторое уведомление. Например, это могло сигнализировать назад, что закончено, предположив, что оболочка в Экране работает на той же машине как Экран.

sh -c '
  sleep 99999999 &
  screen -p 0 -X stuff "\
script -a -c \"ls -l\" /tmp/command.log; kill -USR1 $!
"
  wait
  cat /tmp/command.log
'

4
30.12.2013, 01:01
1 ответ

Я предполагаю, что у Вас есть набор переменной $RPS1 (у меня есть текущий каталог там). Если Вы просто сбрасываете его с

unset RPS1

затем запаздывающий пробел должен исчезнуть.

3
27.01.2020, 20:58
  • 1
    Если Ваш $TERM установлен правильно, вероятно, добавив -256color , можно сохранить набор $RPS1. –  here 05.01.2014, 08:06

Теги

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