ටර්මිනලයේ සිට පසුබිමේ වැඩසටහන් ක්‍රියාත්මක කිරීම


151

වැඩසටහන ක්‍රියාත්මක වන විට කවචය වසා දැමීමේ හැකියාව ඇතිව, කවචයක පසුබිමක වැඩසටහනක් ක්‍රියාත්මක කරන්නේ කෙසේද? මගේ UI හි ගැටළු ඇති බව හෝ යම් හේතුවක් නිසා මට ටර්මිනල් කවුළුවෙන් වැඩසටහනක් ආරම්භ කිරීමට අවශ්‍ය යැයි කියමු nm-applet.

nm-applet

එය ආරම්භ කළ විට, එය පර්යන්ත කවුළුවේ ඉදිරිපස කොටස අල්ලා ගනී.

පර්යන්තය විවෘතව තැබීමකින් තොරව පසුබිම තුළ වැඩසටහන ක්‍රියාත්මක කිරීමට සරල ක්‍රමයක් තිබේද? නැතහොත් එය මුළු පර්යන්තයම අල්ලාගෙන තිබේද?

එම සටහනේ, මම ටර්මිනලයේ සිට වැඩසටහන් ක්‍රියාත්මක කිරීමට ක්‍රමයක් සොයා ගත් අතර එය වෙනත් යෙදවුම් සඳහා ඉඩ දී ඇත, ඇම්පියර්සෑන්ඩ් ( &) විධානයට එකතු කිරීමෙන් :

nm-applet &

නමුත් පර්යන්තය වසා දැමූ පසු පර්යන්තයේ ආරම්භ වූ ඕනෑම ක්‍රියාවලියක් මරා දමන බැවින් මෙය එතරම් ප්‍රයෝජනවත් නොවේ.                                                                        


8
nohup 'command' & මෙය ක්‍රියාත්මක වන බව පෙනේ. මේ සමඟ කිසියම් ගැටළුවක් තිබේද?
ඕවර්ටෝන්

Answers:


187

මම මෑතකදී කැමතියි setsid. එය පෙනෙන්නේ ඔබ පර්යන්තයෙන් යමක් ධාවනය කරනවා සේය, නමුත් ඔබට විසන්ධි කළ හැකිය (පර්යන්තය වසා දමන්න) එය දිගටම කරගෙන යයි.

මෙයට හේතුව විධානය සැබවින්ම ඉවත්ව යන අතර ආදානය වත්මන් පර්යන්තය හරහා පැමිණෙන අතර, එය සම්පූර්ණයෙන්ම වෙනස් දෙමාපියෙකුට අයත් වේ (ඔබ ටර්මිනලය වසා දැමීමෙන් පසුව එය ජීවමානව පවතී).

උදාහරණයක්:

setsid gnome-calculator

disownවර්තමාන ගසෙන් ක්‍රියාවලියක් වෙන් කිරීම සඳහා භාවිතා කළ හැකි අර්ධ වශයෙන් මම ද අර්ධ වශයෙන් සිටිමි . ඔබ එය පසුබිම් ඇම්පියර්සෑන්ඩ් සමඟ ඒකාබද්ධව භාවිතා කරයි:

gnome-calculator & disown

වරහන් සමඟ උපසෙල් විහිදුවීම ගැන ද මම ඉගෙන ගතිමි. මෙම සරල ක්‍රමය ක්‍රියාත්මක වේ:

(gnome-calculator &)

ඇත්ත වශයෙන්ම nohupඔබ සඳහන් කළ පරිදි තිබේ. මම ඒ ගැන වල් නැහැnohup~/nohup.out විමසීමෙන් තොරව ලිවීමේ ප්‍රවණතාවක් ඇති නිසා . ඔබ එය මත රඳා සිටින්නේ නම්, එය ඔබට විය හැකිය.

nohup gnome-calculator

දිගුකාලීන ක්‍රියාවලීන් සඳහා, වැනි දේ තිබේ screen සම්බන්ධතා අතර සැසි සජීවීව තබා ගන්නා වෙනත් අථත්‍ය ටර්මිනල්-මුක්සර් තිබේ. ටර්මිනල් නිමැවුමට තාවකාලික ප්‍රවේශයක් අවශ්‍ය නිසා මේවා ඔබට සැබවින්ම අදාළ නොවේ, නමුත් ඔබට ටික වේලාවකට පසු ආපසු ගොස් නවතම පර්යන්ත ක්‍රියාකාරකම් බැලීමට අවශ්‍ය නම් , තිරය ඔබේ හොඳම තේරීම වනු ඇත.

අන්තර්ජාලය පිරී ඇත screen නිබන්ධන නමුත් මෙන්න සරල ඉක්මන් ආරම්භයක්:


ඔලි, DISPLAY =: 0 එකමුතුව - ඉහත සඳහන් දේවලින් ඔබ භාවිතා කරන්නේ කුමක්ද සහ ඇයි?
නට්ටි ගැන නට්ටි

4
utnuttyaboutnatty මුළු කැබැල්ලම තමන්ගේම ෂෙල් සැසියකින් ඔතා : sh -c "sleep 10s && cvlc '/home/omm.ogg'" & disown. සෑම දෙයක්ම නිසි ලෙස ක්‍රියාත්මක වන බවට වග බලා ගැනීම මගේ විසඳුමයි.
ඔලි

1
utnuttyaboutnatty මා අදහස් කළේ එයයි, නමුත් ඔබ අවස්ථා දෙකක් ධාවනය කිරීමෙන් අවසන් නොවනු ඇත, මන්ද --replaceඑය පෙනෙන ආකාරයට ක්‍රියා කරන අතර ඇත්ත වශයෙන්ම පැරණි අවස්ථාව අවසන් වේ. Xsession තුළ සිට දෙවන වර එය ධාවනය කිරීමෙන් TTYn වෙත බැඳී ඇති පිටපත අවසන් වන අතර අනාගතයේදී ඔබට එය අවශ්‍ය නම් එය භාවිතා කිරීමට ඉඩ දෙනු ඇත. එය කිරීමට වඩා හොඳ ක්‍රමයක් තිබිය හැකි නමුත් මට අවශ්‍ය සෑම අවස්ථාවකම මගේ මතකයට එන දේ.
ඔලි

1
පරිපූර්ණයි, මා වෙනුවෙන් වැඩ කළ උපසෙල් එක '(gnome-calculator &)' ය. පසුබිම තුළ මොනෝ කොන්සෝල යෙදුමක් දියත් කිරීමට මම එය භාවිතා කරමි. අනෙක් ශිල්පීය ක්‍රම සමඟ, මොනෝ යෙදුම ක්ෂණිකව බිඳ වැටෙනු ඇත.
නිකොලොස් ජෝර්ජියෝ

4
අනාගත පරිශීලකයන්ට සටහන : නිර්මාණය nohup.outකිරීමට stdout හා sterr දෙකම නැවත යොමුකිරීම ඇතිව යටපත් කළ හැකි /dev/nullනිසා කැමති:nohup firefox &> /dev/null &
Sergiy Kolodyazhnyy

59

මෙන්න මම යන ක්‍රම දෙකයි. පළමුව, එය පර්යන්තයකින් ධාවනය නොකිරීම; පහර Alt+ F2පලා සංවාද විවෘත, සහ එහි (තොරව සහ) සිට එය ක්රියාත්මක කිරීමට.

පර්යන්තයකින්, ධාවනය කරන්න

nm-applet &

නමුත් පර්යන්තය ඔබම වසා නොගන්න. එනම්, වසා දැමීමට X බොත්තම එබීමෙන් වළකින්න, සහ එහි මෙනුබාර් වෙතින් ගොනුව -> පිටවීම භාවිතා නොකරන්න. ඔබ ටර්මිනලය ඒ ආකාරයෙන් වසා දැමුවහොත්, එය ක්‍රියාත්මක වන බෑෂ් වෙත HUP (Hang UP) සං signal ාවක් යවනු ඇති අතර, එමඟින් එහි සියලුම දරුවන්ට HUP සං signal ාව යවනු ඇත (මේ අවස්ථාවේ දී nohup ක්‍රියා නොකරයි).

ඒ වෙනුවට, ධාවනය වන ශෙල් එකෙන් ඉවත් exitහෝ පහර Ctrl+D . bash පසුව එහි දරුවන් බැහැර කරනු ඇත, පසුව පිටව යනු ඇත, පසුබිම් ක්‍රියාවලීන් තවමත් ක්‍රියාත්මක වේ. බාෂ් පිටවන විට, පර්යන්තයට එහි ළමා ක්‍රියාවලිය අහිමි වී ඇති බැවින් එය ද වැසෙනු ඇත.

සියල්ල එකවරම කිරීම:

nm-applet & exit

එය පුදුම සහගතයි! එය කිසි විටෙකත් නොදැන සිටි අතර මේ ගැන සඳහන් කළ එකම පුද්ගලයා ඔබ බව පෙනේ. ඩෙස්ක්ටොප් පරිසරයක සිටින විට එය මගේ ප්‍රියතම ප්‍රවේශයයි. මට නරක යැයි කිව නොහැක; p
7hi4g0

මම මෙය වෙනත් යෙදුමකින් උත්සාහ කළ අතර එය අසාර්ථක විය: matlab & exitවෙනම විධාන දෙකක් ලෙස ක්‍රියාත්මක වීම හොඳින් ක්‍රියාත්මක විය:matlab & exit
මැට්කෙලි

පර්යන්තය වසා දැමීමෙන් ඔහුගේ පසුබිම් වැඩසටහන් බිඳවැටීමට හේතුව OP කියා සිටියේ මන්දැයි මම කල්පනා කළෙමි. කවුළුවේ "x" බොත්තම මඟින් ටර්මිනලයක් වැසීමට මම කිසි විටෙකත් උත්සාහ කර නැත.
user1717828

x බොත්තම මරා දමයි, එය පිරිසිදු ලෙස පිටවන්නේ නැත, පිටවීමේ විධානය මඟින් සිදු කරයි. ඔබට ඒ වෙනුවට x බොත්තම පිටවීමේ විධානයකට නැවත සකස් කළ හැකිය ...
ටිම් බේකර්

18

ඔබ පෙන්වා දුන් පරිදි, ඔබට ධාවනය කළ හැකිය

nohup nm-applet &  

පර්යන්තය වැසීමේදී අවසාන සං signal ාව නොසලකා හැරීමට. ඒ ගැන ප්‍රශ්නයක් නැහැ.


වෙනත් විකල්ප තිබේද? දැන ගැනීම සඳහා මිස වෙන කිසිවක් සඳහා නොවේ
OVERTONE

විකිපීඩියාවේ ( en.wikipedia.org/wiki/Nohup ) echo command | at nowමට වැඩ කිරීමට නොහැකි වූ භාවිතා කිරීමට යෝජනාවක් තිබේ .
desgua

2
ඔබ අයිකනයක් හෝ වැඩසටහනක් දෙවරක් ක්ලික් කළ විට එය UI එකකින් ක්‍රියා කරන්නේ කෙසේදැයි මම කල්පනා කරමි.
ඕවර්ටෝන්

execnohup <command> &ක්‍රියාවලියක් පසුබිමේ ධාවනය කිරීම සහ වත්මන් ෂෙල් විමසුම නැවත ලබා දීම සඳහා විකල්පයක් සපයයි .
JSStuball

13

වෙනත් බොහෝ පිළිතුරු නොමැති එක් දෙයක් නම් දැනට කවචය අවහිර කරන ධාවන ක්‍රියාවලියක් වෙන් කරන්නේ කෙසේද යන්නයි. බොහෝ ටර්මිනල් සහ ෂෙල් වෙඩි වලදී, Ctrl+ Zක්‍රියාත්මක වීමේ ක්‍රියාවලිය නවතා ඔබව නැවත ආදාන විමසුමක් වෙත ගෙන එනු ඇත. එවිට ඔබට නිකුත් කළ හැකිය

bg

ධාවන ක්‍රියාවලිය පසුබිමට යැවීමට. නිකුත් කිරීම

fg

ධාවන ක්‍රියාවලිය නැවත පෙරට දැමීම වෙනුවට.

සංස්කරණය කරන්න : මම පසුව සොයාගත් මෙම පිළිතුරේ වැඩි විස්තර .


8

(exec PROGRAM &> /dev/null & )උපලේඛනයේ PID එක පවරා ගැනීමට ඉඩ දීමට භාවිතා කරන්න PROGRAM. විවිධ වැඩසටහන් කිහිපයක් සමඟ මම මෙම ප්‍රවේශය කිහිප වතාවක් පරීක්ෂා කර ඇත්තෙමි. මුල් පර්යන්තය වසා දැමීමෙන් අලුතින් බිහි වූ වැඩසටහනට කිසිදු බලපෑමක් නැත

කුඩා නිරූපණය:

$ # this is before running
$ (exec firefox &> /dev/null &)
$ # and look, we still in side the terminal and can continue working

මේ උගුල (exec firefox)අවිනිශ්චිතයි මම පිටවීමේ ෆයර්ෆොක්ස් තෙක් පර්යන්තය ... සහ පර්යන්තය SIGHUPs ෂෙල් හා උප කබොළ වසා
kos

මම මගේ පිළිතුර සංස්කරණය කර ඇත. තවත් වැඩසටහන් කිහිපයක් සමඟ එය පරීක්ෂා කරන ලදී. මෙම අනුවාදයේ පාලක පර්යන්තය එල්ලෙන ෆයර්ෆොක්ස් හෝ වෙනත් වැඩසටහනක් මා දැක නැත
සර්ජි කොලොඩියාස්නි

මට හොඳින් වැඩ කරයි
Zanna

බාෂ්ගේ ක්‍රියාත්මක කිරීම අත්‍යවශ්‍ය යැයි මම විශ්වාස නොකරමි, යම් හේතුවක් නිසා ඔබට PID අවශ්‍ය විය හැකිය.
marinara

2

මට බයිබු පර්යන්තය නිර්දේශ කළ හැකිය. F6 යතුර එබීමෙන් ඔබට පහසුවෙන් ඔබේ ක්‍රියාවලිය වෙන් කළ හැකිය.


1

ඉහත හොඳ පිළිතුරු තිබුණද, මම පසුබිමේ MATLAB භාවිතා කරන ආකාරය පිළිබඳ මගේ ශත 2 ලබා දීමට කැමැත්තෙමි.

sudo -b matlab

එම -b sudo ක ටැගය පසුබිම තුළ යෙදුම් ධාවනය කළ හැක. මෙම විධානය ක්‍රියාත්මක කිරීමෙන් පසු ඔබට ටර්මිනලය වසා දැමිය හැකිය.

බොහෝ විට, සම්බන්ධයක් නැති නමුත් ෂෙල් විධාන පැහැදිලි කිරීමට ඔබට භාවිතා කළ හැකි අපූරු වෙබ් අඩවියක් ඇත. http://explainshell.com/explain/8/sudo


0

මම එහි නිවැරදි මාර්ගය නොදනිමි, නමුත් මම කලින් සැසිවාරයෙන් ඉවත්ව යන අතරතුර තවත් සැසියක් ආරම්භ කරමි. උදාහරණයක් ලෙස මම මගේ රාස්ප්බෙරි මත සරල වෙබ් සේවාදායකයක් ධාවනය කළෙමි. web.py එකක්. මම තනිවම නව සැසියක් ආරම්භ කරමි. ඒක තමයි. ඔබ අනෙක් සැසියේ වැඩ කරමින් සිටියද ඔබ තවමත් යාවත්කාලීන කර ඇති බැවින් එයද ප්‍රයෝජනවත් වේ.


2
Ask උබුන්ටු වෙත සාදරයෙන් පිළිගනිමු! මම නිර්දේශ සංස්කරණය මෙය ඉටු කරන ආකාරය පිළිබඳ නිශ්චිත තොරතුරු සමග එය පුළුල් කිරීමට මෙම පිළිතුර ing. ( උබුන්ටු අසන්න වඩාත්ම වටිනාම පිළිතුරු මොනවාද යන්න පිළිබඳ සාමාන්‍ය උපදෙස් සඳහා මම හොඳ පිළිතුරක් ලියන්නේ කෙසේද යන්නද බලන්න .)
ඩේවිඩ් ෆෝස්ටර්

0

KDE භාවිතා කරන්නේ නම්, ඔබට ද භාවිතා කළ හැකිය kstart, එමඟින් ඔබේ වැඩසටහන පර්යන්තයෙන් වෙන් කරනු ලැබේ. KDE පරිසරය විධානය සඳහා නිවැරදිව සකසා ඇති බවටද එය සහතික කරයි. ( kstart.cppයොමු කිරීම සඳහා ප්‍රභව කේතය බලන්න . ඔබ එතැන් සිට දකින පරිදි, එය භාවිතා කරයි KProcess::startDetached, KProcessව්‍යුත්පන්න කර ඇත QProcess, startDetachedනව ක්‍රියාවලියක් ආරම්භ කරයි, එයින් වෙන් වේ.)

සමාන ද kde-openහෝ xdg-openහෝ gnome-open.


මෙය පෙනී යන විට, එය පිළිතුරකට වඩා අදහස් දැක්වීමක් මෙන් පෙනේ. පුළුල් කිරීමට කරුණාකර සංස්කරණය කරන්න. එක් ලයිනර් එකක් පමණක් දෙන්න එපා; උපුටා දැක්වීම් සමඟ ඔබ නිවැරදි වන්නේ මන්දැයි පැහැදිලි කරන්න. පැහැදිලි කිරීමකින් තොරව පිළිතුරු ඉවත් කිරීමට යටත් වේ.
anonymous2
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.