현재 파티션/드라이브 마운트 지점 경로를 가져오는 명령?

현재 파티션/드라이브 마운트 지점 경로를 가져오는 명령?

동일한 작업을 수행하는 대체 명령이 있습니까 findmnt -T . -o TARGET |tail -n 1?

/media/username/HDD/subdir1/subdir2예: 이 명령은 현재 작업 디렉터리가 /media/username/HDD/.

Windows에서 현재 드라이브/파티션의 최상위 디렉터리 경로는 다음 \/같습니다 .지침), Windows에서는 대신 드라이브 문자를 사용하기 때문입니다."모든 것은 문서이다".

Unix는 보다 통합되고 모듈화된 방식으로 작동하지만 파티션의 마운트 지점을 찾는 방법은 무엇입니까? 더 짧은 해결책이 없으면 findmnt -T . -o TARGET |tail -n 1문제가 없습니다. 다른 방법이 있는지 알고 싶습니다.

답변1

man findmnt파일 시스템의 마운트 지점을 찾을 때 당신이 찾고 있는 것을 수행하는 것처럼 보이는 몇 가지 제안을 보았습니다 :

findmnt --first-only --noheadings --output TARGET --target "$PWD"
/home

또는 가독성이 떨어집니다.

findmnt -fno TARGET -T "$PWD"
/home

답변2

나중에 변수에 사용하지 않고 직접 찾고 싶은 경우. 다음보다 짧은 방법은 찾을 수 없습니다 df ..

$ df . 
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda6      343650580 232263752  93860660  72% /home

물론 추가 세부 정보가 있으므로 장치 이름을 변수에 직접 저장하는 데 사용할 수 없습니다. 그러나 구문 분석하는 것은 쉽습니다.

$ df . | grep -Po '^/\S+'
/dev/sda6
$ df . | awk '/^\//{print $1}'
/dev/sda6

하지만 정말로 인쇄하라는 명령을 원한다면,@roaimafindmnt최고가 될 것입니다.

관련 정보