쉘 프롬프트가없는 경우 Ctrl-Z를 누른 후 nano로 돌아가려면 어떻게합니까 (Matlab 세션에서)


31

화면 (-x) 터미널에서 실행되는 MATLAB 세션 내에서 nano를 사용하고 있습니다. 실수로 Ctrl-Z를 눌렀을 때 즉시 nano가 나오고 "나온으로 돌아가려면"fg "를 사용하십시오"라는 메시지가 표시되지만 명령 프롬프트는 표시되지 않습니다. 입력 한 내용이 화면에 나타나지만 아무 반응이 없습니다. Ctrl-Z를 누르면 ^ Z는 화면에 인쇄됩니다. 어떤 아이디어? 12.04 사용.


ctrl-z를 누른 후 프롬프트가 나타납니다. 나는 ... 당신의 경우에는 일어나지 않는 것 같습니다. nano터미널에서 정확히 어떻게 달리 나요?
Rmano

방금 12.04를 사용하고 있지 않다는 것을 깨달았습니다. 사실 nanoMATLAB 세션 내부에서 실행 중입니다.이 문제는 (분명히) 문제입니다. jobs다른 화면에서 전화 를 걸면 끌어 올 작업이 나열되지 않습니다.
user282315

답변:


11

의견에서 저자는 자신이 nano Matlab 명령을 CTRL-Z로 명령을 일시 중단 한 후 프롬프트가 표시되지 않는다고 말합니다. 이것은 아마도 Matlab (1)의 버그 일 것입니다 .CTRL-Z가 대처할 수 없다면 나노에 도달해서는 안됩니다 ...

문제는 쉘 명령 fg( bgjobs )이 쉘의 직접 하위 항목에서만 작동한다는 것입니다. 그러나 다른 쉘에서 중지 된 프로세스를 계속할 수는 있지만 화면 상태가 올바르게 관리되는 것은 아닙니다.

  1. 다른 터미널 창에서 nano프로세스를 찾으십시오 .

    % ps ugx | grep nano
    romano   10600  0.0  0.0  20784  1628 pts/11   T    16:52   0:00 nano prova
    romano   10653  0.0  0.0  18256   900 pts/11   S+   16:53   0:00 grep nano
    
  2. 중지됨 (상태 T )

  3. 계속해

    kill -CONT 10600 
    

... 그리고 그것이 작동하기를 바랍니다 (터미널을 크게 엉망으로 만들 수 있음). 당신은 또한 시도 할 수 있습니다

killall -CONT nano 

그렇게하면 CONT신호가 모든 "nano"프로세스로 전송됩니다 (문제는 아닙니다).


각주 :

(1) 나는 시도했다 octave: EDITOR=nano octave다음 edit file옥타브한다. CTRL-Z를 누르면 문제가 해결됩니다. Matlab이 아니라 TSTP 신호를 수신하고 관리하는 사람에 대한 이상한 상호 작용 일 수 있습니다.


굉장합니다. 이 문제는 한동안 나를 귀찮게했다! TheMathWorks로 버그 기록. 감사!
user282315

1
아아, 새로운 계정, 공평한 평판은 없습니다 (아직).
user282315

54

백그라운드에서 유일하게 백그라운드 프로세스가 %시작되면Return 나노 당신을 반환해야합니다.

즉, fg항상 작동해야합니다. 작업이 둘 이상인 경우에도 최신 작업으로 되돌아갑니다.


5
imo, 이것은 실제 답변입니다. op가 요청한 작업을 수행하고 닫힌 (ctrl + z) Nano 창을 다시여십시오.
DonSeba

여기 멋진 트릭.
pietrovismara

이것은 나에게도 도움이됩니다.
Arefe

이것이 정답이어야합니다.
user2180794

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.