ОТРЕДАКТИРОВАННЫЙ: забыл удваиваться, выходят из \r в sed
строка
любой из них должен работать на Вас
for i in $(find . -type d -name '*\r'); do mv "$i" "$(echo $i | sed -e 's/\\r//g')"; done
find . -type d -name '*\r' -exec mv "{}" "$(echo {} | sed -e 's/\\r//g')" \;
это найдет все каталоги названными * $\\r под Вашим в настоящее время каталог
это будет затем mv
(переименуйте) их к тому же имени минус \r
Последние версии Nvidia, собственные драйверы (возможно объединенный с другими последними версиями библиотек) имеют ошибку, которая заставляет их повреждать маску сигнала.
Можно посмотреть на маски сигнала как это:
anthony@Zia:~$ ps -eo blocked,pid,cmd | egrep -v '^0+ '
BLOCKED PID CMD
fffffffe7ffbfeff 605 udevd --daemon
0000000000000002 4052 /usr/lib/policykit-1/polkitd --no-debug
0000000000087007 4646 /usr/sbin/mysqld --basedir=/usr […]
0000000000010000 15508 bash
Это о том, на что это должно быть похожим. При выполнении этого в системе с собственными драйверами Nvidia Вы будете видеть все виды сумасшедших значений для BLOCKED
, для многих Ваших программ — включая, вероятно, все неправильно себя ведущие.
Обратите внимание, что маски сигнала передаются от родителя до ребенка через fork
/exec
, таким образом, после того как родительский процесс имеет поврежденный, все дети, которых он порождает от той точки вперед, будут, также.
См. также мой вопрос После того, как обновление, X кнопок в строке заголовка больше не закрывают xterm и различные ошибки дистрибутива, которые Вы сможете найти теперь, зная который пакет посмотреть на. Можно изменить код в моем ответе на тот вопрос сбросить маску сигнала ни к одному заблокированному (Игнорировать sigaddset
и изменение SIG_UNBLOCK
кому: SIG_SETMASK
).
Я думаю, что это - желаемое поведение от top
: это выходит только на команде "q" с клавиатуры.
Код top
вероятно, установки сигнализируют о функциях ловца, любом с a signal()
системный вызов или a sigaction()
системный вызов. Мое предположение было бы этим когда top
периодически обновляет экран, он получил сигнал, возможный от alarm()
системный вызов или что-то как этот.
Вы уверены это cat
не выходит на Ctrl-C или управлении-\? Обе из тех ключевых хорд обычно генерируют SIGINT и SIGQUIT соответственно. cat
казалось бы, не извлек бы выгоду из восстановления ни с одного из тех двух сигналов.
Одним способом проверить, что думает Ваш tty драйвер, являются ключевые хорды для SIGINT и SIGQUIT:
stty -a
На моей машине это говорит что-то как:
speed 38400 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
"Предают земле =, ^C" и "выходят =, ^\\" средний "Отправляют SIGINT в текущий приоритетный процесс на Ctrl-C", и "Отправляют SIGQUIT в текущий приоритетный процесс на обратной косой черте Управления". Те два становились измененными так или иначе?
Вам можно было бы установить Вашу оболочку для захвата сигналов. В zsh и ударе, команде:
trap "" INT
сохраняет Ctrl-C (в том же xterm) от уничтожения последующего вызова cat
. Но то "прерывание" не сохраняет a kill -QUIT
от порождения cat
обработайте для выхода. Тем не менее, необходимо проверить удар или zsh или файлы точки ksh для trap "" INT
вызовы.
Вы не упоминаете, какая версия ядра, какой дистрибутив и что окружает, Вы используете. Упоминание о тех вещах могло бы получить Вас лучший ответ.
cat
и top
просто примеры. все процессы делают то же поведение. я пытался записать простую программу для сна только (без обработчика сигналов), и у меня было то же поведение.
– Maxwell S.
17.01.2014, 01:26
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D;
обратите внимание на то, что я также вызвал kill
программа для отправки сигналов
– Maxwell S.
17.01.2014, 01:41