Есть ли способ поставить переднюю работу в фоновом режиме с привязкой клавиш?

Чтобы поставить переднее задание, в фоновом режиме я нажимаю cltr + Z, а затем bg [job-number]. Есть ли способ сделать это за один шаг вместо двух, с некоторой командой cltr + [key]?

И я не имею в виду &. Я хочу поставить процесс, который я уже начал, и взаимодействую с ним в фоновом режиме.

4
задан 27 August 2011 в 22:43

7 ответов

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer 
This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux
^Z
[1]+  Stopped                 smplayer
rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\""
[1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 25 May 2018 в 19:07

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 25 July 2018 в 21:24

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 31 July 2018 в 13:04

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 2 August 2018 в 03:03

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 4 August 2018 в 18:54

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 6 August 2018 в 03:16

Вы можете пропустить номер идентификатора задания: если вы его опустите, он займет последнее приостановленное задание из текущей среды. Таким образом, cltr + Z и bg короче.

Если вы добавите это в свой .profile или .bashrc

bind '"\ek"':"\"bg\C-m\""

cltr + w [] d4]

Пример:

rinzwind@discworld:~$ smplayer This is SMPlayer v. 0.6.9 (SVN r3447) running on Linux ^Z [1]+ Stopped smplayer rinzwind@discworld:~$ bind '"\ek"':"\"bg\C-m\"" [1]+ smplayer &

Я не смог добавить w + Z в команде. Вероятно, из-за игнорирования сигнала:

Ctrl + Z Сигнал приостановки, отправляет SIGTSTP в запущенную программу, тем самым останавливая его и возвращая управление в оболочку. 12.1.1.2. Сигналы к вашей оболочке Bash. В отсутствие каких-либо ловушек интерактивная оболочка Bash игнорирует SIGTERM и SIGQUIT. SIGINT захватывается и обрабатывается, и если управление заданиями активно, SIGTTIN, SIGTTOU и SIGTSTP также игнорируются. Команды, запускаемые в результате подстановки команд, также игнорируют эти сигналы при генерировании клавиатуры. SIGHUP по умолчанию выходит из оболочки. Интерактивная оболочка отправит SIGHUP для всех заданий, запущенных или остановленных; см. документацию по отключенному встроенному устройству, если вы хотите отключить это поведение по умолчанию для определенного процесса. Используйте опцию huponexit для уничтожения всех заданий после получения сигнала SIGHUP с использованием встроенного магазина.
2
ответ дан 7 August 2018 в 20:57

Другие вопросы по тегам:

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