존재하지 않는 파일에 대한 "readlink -e"에 대한 Linux 대안

존재하지 않는 파일에 대한 "readlink -e"에 대한 Linux 대안

Windows에서는 파일 저장 대화 상자에 제공할 수 있도록 존재하지 않는 파일에 대한 전체 경로를 생성하여 호스트 응용 프로그램에 파일을 저장할 위치를 알려주는 경우가 많습니다. Cygwin을 사용하면 다음과 같이 할 수 있습니다.

cygpath -au Some/Relative/Path.blah # For Cygwin apps
cygpath -aw Some/Relative/Path.blah # For Windows apps

putclip나는 관련 애플리케이션의 파일 저장 대화 상자에 붙여넣을 수 있도록 생성된 전체 경로를 Cygwin으로 파이프하는 경우가 많습니다 . 보다 정확하게는 putclp종료 캐리지 리턴을 제거하는 내 함수("i" 제외)에 파이프합니다 .

내가 Linux에서 찾은 것과 가장 가까운 것은 다음과 같습니다.

readlink -e Some/Relative/Path.blah

xsel -ipX-windows 메인 클립보드나 xsel -ibUbuntu의 보다 현대적인 Windows와 유사한 클립보드 로 파이프합니다 .

안타깝게도 readlink -e경로가 하나만 반환됩니다.기존의문서. 애플리케이션에 파일을 생성할 위치를 알려주기 때문에 존재하지 않는 파일에 대한 전체 경로를 생성해야 하는 경우가 많습니다.

cygpathreadlink/ 존재하지 않는 파일에 대해 지정된 상대경로를 기준으로 전체경로를 생성하는 대응물이 있는가 ?

필요한 명령이 호출된다고 가정할 경우 GetFullPath필요한 기능의 예는 다음과 같습니다.

GetFullPath Relative/Path/To/Nonexistent/File

표준 출력의 결과는 입니다 /The/Full/Path/To/Nonexistent/File.

답변1

realpath -m Some/Relative/Path.blah

그것으로 충분합니다. Linux에서는 심볼릭 링크를 확인할 필요가 없으며, 링크가 포함된 경로와 그렇지 않은 경로 사이에는 실제로 사용법 차이가 없습니다. 후자로 할 수 있는 모든 것은 전자에도 적용됩니다. 저장 대화 상자를 신경 쓰지 마십시오!

다소 이상한 이유로 저장 대화 상자에 심볼릭 링크가 없는 것에 정말로 관심이 있는 경우에도 동일한 -m옵션이 적용됩니다 !readlink -e Some/Relative/Path.blah

관련 정보