screen
저는 부팅 텍스트 모드(콘솔) 이메일 클라이언트(예: )를 사용하기 시작한 alpine
이후로 네트워크 연결 끊김으로 인해 부분적으로 작성된 이메일을 잃어버린 적이 없습니다 . 굉장히 유용하다.
그러나 이제 이메일 클라이언트를 시작하는 것이 좀 더 복잡해졌습니다.
- 이전 세션이 있는지 확인
screen -list
- 이전 단계에 따라 다릅니다.
- 그렇다면 다시 연결해 보세요.
screen -U -r <number>
- 그렇지 않은 경우 이메일 클라이언트를 시작하십시오.
screen -U alpine
- 그렇다면 다시 연결해 보세요.
간단한 명령(간단한 스크립트)만 실행할 수 있도록 이 단계를 어떻게 단순화할 수 있습니까 start_or_reconnect alpine
? 여러 세션이 활성화된 경우 이는 버그이거나 첫 번째 세션을 사용한다고 가정할 수 있습니다.
답변1
명시적인 세션 이름(옵션)을 사용 하고 기존 세션에 다시 연결하거나 세션이 없는 경우 세션을 만드는 데 -S
사용됩니다 .-RR
alias m='screen -S alpine -d -RR alpine'
답변2
빠르고 멍청하다:
#!/bin/sh
ARG=`screen -list | grep Detached | awk '{print $1}'`
if [ -z "$ARG" ]; then
screen -U alpine
else
screen -U -r $ARG
fi