Dotfile은 현재 쉘에서 작동하지 않습니다. 새 쉘이 필요합니다.

Dotfile은 현재 쉘에서 작동하지 않습니다. 새 쉘이 필요합니다.

분명히 말하면 이것은 screen문제가 아니며 일반적인 쉘 문제라고 확신합니다.

screen새로운 Ubuntu 12.04 서버에서 현재 사용자 정의 파일을 사용하여 명령을 실행 하려는 터미널에 로그인되어 있습니다 ~/.screenrc. 내 scp.rc 파일을 Ubuntu 시스템에 복사하고 실행했지만 screen내 .rc 파일을 읽지 못하고 있다는 것을 알 수 있었습니다. 나는 현재 세션에서 몇 가지를 시도했습니다.

  1. /bin/bash그런 다음 실행screen
  2. sh그 다음에screen
  3. source파일 및 기타 이상한 환경 변수 트릭

ssh문제는 Ubuntu 서버에서 새 세션을 생성하고 실행하여 쉽게 해결할 수 있지만 screen궁금합니다. 복사하기 전에 사용 중인 원래 터미널에서 .rc 파일을 "작동"시키려면 어떻게 해야 합니까?

답변1

이는 일반적인 쉘 문제가 아닙니다. 사용자가 시작하는 프로그램(예: screen)은 시작할 때 해당 .rc 파일을 읽습니다. 파일이 로그인하기 전이나 후에 생성되었는지 확인하려고 시도하지 않습니다. (그리고 그럴 수 없습니다. Linux에는 합리적인 설명이 없습니다.) 확인하는 방법파일 생성 시간.)

그래서 그것은 사실이 아닙니다. 대신 로그인 세션과 관련이 있습니다. 아마도(이것은 완전한 목록은 아닙니다):

  • 이미 screen실행했고 기존 screen.
  • 귀하는 다른 사용자 su이거나 sudo다른 사용자에게 속해 있습니다(따라서 .rc 파일이 잘못된 홈 디렉토리에 배치됨).
  • $HOME뭔가 흥미로운 일을 하도록 설정된 것처럼 환경이 이상합니다 . 상황에 따라 간혹 이런 현상이 발생할 수도 있으니 su참고 하시기 바랍니다 . sudo(다른 명령의 경우 - 사용하지 않을 것 같습니다 screen. 역시 이상한 명령일 수 있습니다 $XDG_CONFIG_HOME.)
  • 권한 오류입니다. (다른 로그인에서는 작동하지 않을 수도 있습니다.)

물론 연결 중 하나가 잘못된 서버에 연결되는 등 다양한 "연결되어 있습니까?" 오류가 있습니다.

관련 정보