/var/cache$ sudo find ./ -type f | grep -E ".*\.[a-zA-Z0-9]*$" | sed -e 's/.*\(\.[a-zA-Z0-9]*\)$/\1/' | sort | uniq -c | sort -n
1 .6
1 .cache
1 .noconf
1 .php
1 .sl
2 .bin
2 .el
2 .tdb
4 .baseA
4 .baseB
4 .dat
4 .DB
27 .db
221 .deb
Вот объяснение:
find ./ -type f
находят только файл, не, файл фильтра каталога
grep -E ".*\.[a-zA-Z0-9]*$"
с расширением
sed -e 's/.*\(\.[a-zA-Z0-9]*\)$/\1/'
удаляет путь и имя файла, сохраняет только расширение
sort | uniq -c | sort -n
вид, uniq и вид
При использовании Bash можно работать disown -h job
disown [-ar] [-h] [jobspec ...]
Без опций каждый jobspec удален из таблицы активных заданий. Если
-h
опция дана, задание не удалено из таблицы, но отмечено так, чтобы SIGHUP не был отправлен в задание, если оболочка получает SIGHUP. Если jobspec не присутствует, и ни один-a
ни-r
опция предоставляется, текущее задание используется. Если никакой jobspec не предоставляется,-a
опция означает удалять или отмечать все задания;-r
опция без jobspec аргумента ограничивает операцию рабочими заданиями.
Если можно жить с неспособностью взаимодействовать с процессом, и Вы не возражаете против загрузки случайных модулей ядра, Вы могли сделать хуже, чем посмотреть на Ищейку. С другой стороны, существует несколько других проектов. Вот один вызов injcode, который может главным образом сделать то, что Вы хотите сделать.
Случается так, что Вы волнуетесь по поводу таймаута сессии? В этом случае Вы могли Ctrl-z и bg процесс, и затем просто поместить что-то для поддержания сессии как "ping-t localhost" или "вершина".
Если случается так, что Вы хотите выйти из системы, то я боюсь, что не могу добавить к другим комментариям.
Я, вероятно, под взглядами это, так не стесняйтесь исправлять меня (я уже узнал о, отрицают!)... Не был бы ctrl-Z и "bg" работать, чтобы, по крайней мере, получить процесс, работающий в фоновом режиме? Или ключевой вопрос то, что Вы все еще хотели бы видеть STDOUT, в то время как он работает?
Я недавно видел ссылку на neercs, который является созданным использованием подобной экрану утилиты libcaca, цветной художественной ASCII библиотекой. Среди других функций это имеет способность захватить существующий процесс и повторно породить его в Вашем neercs (экран) сессия.
Я не использовал его однако, таким образом, я не могу прокомментировать, работает ли это или нет.
Я могу только дать Вам простой "Нет" без, почему для экранной части, я интересовался бы причиной сам Вы.
Однако имейте Вас попробованный disown
(встроенный удар)
~ $ echo $SHELL
/bin/bash
~ $ type disown
disown is a shell builtin
~ $ help disown
disown: disown [-h] [-ar] [jobspec ...]
By default, removes each JOBSPEC argument from the table of active jobs.
If the -h option is given, the job is not removed from the table, but is
marked so that SIGHUP is not sent to the job if the shell receives a
SIGHUP. The -a option, when JOBSPEC is not supplied, means to remove all
jobs from the job table; the -r option means to remove only running jobs.
Cryopid является дальнейшим развитием от автора grab.c, который замораживает процесс в файл, который Вы затем выполняете (в экране) для возобновления процесса.
Для кражи процесса от одного tty до текущего tty можно хотеть попробовать этот взлом:
http://www.ucc.asn.au/~dagobah/things/grab.c
Требуется некоторое переформатирование, чтобы скомпилировать в текущие версии Linux/glibc, но все еще работает.
Когда процесс запускается, STDIN, STDOUT и STDERR подключены к чему-то. Обычно Вы не можете изменить это, после того как команда запускается. В случае Вы описываете, это - вероятно, tty, связанный с ssh сессией. nohup в значительной степени просто делает...
command < /dev/null > nohup.out 2>&1
Таким образом, устанавливает STDIN на/dev/null, STDOUT в файл и STDERR к STDOUT. Экран приводит в порядок намного более сложные вещи, включающие устанавливающий ttys это прямо к себе.
Я не знаю ни о каком пути к задним числом nohup или screenize рабочий процесс. Если Вы CD к/proc/$pid/fd и видите что 0, 1 и 2 точки к.
У Вас могла бы быть некоторая удача с, отрицают, но не, если процесс пытается сделать что-нибудь с STDIN, STDOUT или STDERR.
nohup на Solaris/OpenSolaris имеет флаг-p к nohup рабочий процесс - например, см. Солярис 10 nohup страниц справочника.
Используйте reptyr
От README:
reptyr - A tool for "re-ptying" programs.
-----------------------------------------
reptyr is a utility for taking an existing running program and
attaching it to a new terminal. Started a long-running process over
ssh, but have to leave and don't want to interrupt it? Just start a
screen, use reptyr to grab it, and then kill the ssh session and head
on home.
USAGE
-----
reptyr PID
"reptyr PID" will grab the process with id PID and attach it to your
current terminal.
After attaching, the process will take input from and write output to
the new terminal, including ^C and ^Z. (Unfortunately, if you
background it, you will still have to run "bg" or "fg" in the old
terminal. This is likely impossible to fix in a reasonable way without
patching your shell.)
Несколько сообщений в блоге его автором:
Я хотел использовать nohup
(или аналогичный) для запуска браузера командной строки ссылок
и прикрепления к нему после загрузки файла из Веб-сайт ASP.NET со сложным процессом аутентификации и множеством скрытых состояний просмотра, затрудняющих использование, выполняет работу с curl
/ wget
.
В конце концов я использовал tmux
, который отлично справился с задачей:
tmux
ссылки
в моем случае) и оставьте его запущенным tmux attach
, чтобы вернуть приложение на экран Proses çıxışı yönləndirə bilərsiniz gdb
ilə fayl https://blog-en.openalfa.com/how-to-detach-from-the-terminal-a-running-process-in-linux
və sonra onu inkar et
Güncelleme : Ubuntu 18.04-də sudo və bir az fərqli gdb əmri ilə gdb çalıştırmalı idim:
p (int) dup2 (open ("/ tmp / test.stdout", 1), 1)