마운트된 볼륨(예: DOS)의 디렉터리를 기억하는 비슷한 방법이 있습니까?

마운트된 볼륨(예: DOS)의 디렉터리를 기억하는 비슷한 방법이 있습니까?

얼마 전 순수 Windows 환경에서 Windows와 Mac을 사용하는 환경으로 전환했습니다.

천천히 Mac에 익숙해지고 사랑에 빠지는 동안 저를 좌절시키는 몇 가지 사항이 있습니다.

그 중 하나는 파일 시스템에 작업 디렉터리가 하나만 있다는 것입니다.

Unix만 실행하는 사람들에게는 이상하게 보일 수 있지만 Windows에서의 내 경험을 따르십시오.

C:(프로그램), D:(데이터), E:(CD/DVD), F: & G:(USB 키)가 있습니다.

내가 입력하면 ...

CD /D F:\Dir1\Dir2
CD /D D:\Dir3\Dir4
F:
CD
D:
CD

이것이 유효한 경로라고 가정하면 출력은 다음과 같습니다.

F:\Dir1\Dir2
D:\Dir3\Dir4

이는 "드라이브"를 교환하고 각 드라이브의 마지막 작업 디렉터리를 가져올 수 있음을 보여줍니다.

이는 전체 경로를 입력하지 않고도 한 드라이브에서 다른 드라이브로 콘텐츠를 복사하려는 경우에 유용합니다.

해당 디렉터리로 이동하여 해당 내용을 확인한 다음 대상 드라이브/디렉터리로 전환하고 복사를 시작할 수 있습니다.

COPY F:*.* D:.

예를 들어.

내 Mac에서는 2개의 Finder 탭이 있는 UI를 사용할 수 있지만 여전히 명령줄도 사용할 수 있기를 원합니다.

마운트된 파일 시스템이 해당 파일 시스템의 마지막 작업 디렉터리를 기억하고 노출하도록 하는 동등한 방법이 있습니까?

현재는 "전체 명령을 완전히 입력"하는 접근 방식입니다.

답변1

Windows 방식(실제로는 DOS 방식)은하드 매핑A:문자( 등)로 표시되는 하위 수준 "장치"입니다 C:.

Unix에는 (기본적으로) 단 하나의 디렉토리 트리가 있으며 DOS보다 더 균일하게 액세스합니다. 여러 가지 방법으로 파일 시스템에 액세스할 수 있습니다. DOS 세계에서 알 수 있는 것은 그래픽, 창 지향입니다. xfe예를 들어 한 가지 후보를 참조하십시오. 또 다른 "기본" 액세스는 셸을 통한 것입니다. 다른 껍질에는 다른 기능이 있습니다. (대화식 사용을 위해) 이것을 보고 싶을 수도 있지만 tcsh일반적인 POSIX 셸( bash, , ) 에는 a라는 개념이 있습니다 ksh.zsh작업 목록. 디렉터리 간을 탐색할 수 있으며 cd, 특정 변형은 cd -이전 디렉터리로 전환하는 것입니다. 한 디렉터리에서 미리 정의된 셸 변수 $OLDPWD나 해당 명령을 사용하여 이전 디렉터리에 액세스할 수 있습니다.물결표 표현 ~-(위에서 언급한 내용과 유사합니다 cd -.) 이것으로 당신은 말할 수 있습니다 cp ./* ~-. 또한 서로 다른 버전의 트리에 있는 동일한 하위 디렉터리 사이를 쉽게 이동할 수 있는 ksh더 강력한 기능도 있습니다 . 예를 들어 이러한 변형의 하위 디렉터리에서 해당하는 다른 하위 디렉터리로 이동할 수 있습니다. 일부 셸에는 다시 방문하려는 디렉터리를 기억하는 데 사용할 수 있는 두 가지 명령(로컬 또는 라이브러리를 통해) 도 있습니다 . 그런 다음 전체 경로를 전혀 지정하지 않고도 자주 사용하는 디렉터리로 이동할 수 있는 db 개념이 있습니다 . - or를 최대한 활용하는 것이 기본 이기 때문에 디렉토리 변경에 대해 모두 썼습니다 . 이전에 쉘 명령에서 이것을 언급했습니다. 명령 및 경로 완성 기능을 언급하지 않으면 설명이 완료되지 않습니다. 일반적으로 이 키를 사용하여 명령을 완성하므로 경로를 명시적으로 "쓰기"하더라도 셸은 이를 매우 빠르게 수행하는 데 도움이 됩니다. 마지막으로 중요한 것은 쉘의 기록입니다. 이전에 입력한 명령에 액세스할 수 있으며 필요에 따라 편집 및/또는 불러올 수 있습니다.cdcd gawk-3.1.6 gawk-4.1.2pushdpopdCDPATH$OLDPWD~-Tab

답변2

귀하의 질문은 아마도 명령줄로 사용하는 쉘인 bash의 기능에 관한 것입니다.

전환 부분의 경우 cd -이전 디렉터리로 다시 전환을 사용할 수 있습니다.

명령에서 이전 디렉터리를 참조하려면 $OLDPWD다음과 같이 사용할 수 있습니다.

 cp $OLDPWD/* .

또한 일반적으로 help pushd살펴 보십시오 .help popdman bash

답변3

다른 옵션/트릭을 추가하겠습니다.

이는 매우 유용한 기호 링크를 사용합니다. 이는 바로 가기와 약간 비슷하지만 대부분의 면에서 더 좋습니다(바로 가기가 래퍼 스크립트로 사용되지 않는 한 래퍼 스크립트가 더 좋습니다).

또한 bash CDPATH변수를 사용합니다.

cd ~
mkdir drive-letters
cd drive-letters
ln -s / c:
ln -s "$HOME" h:
ln -s /media/cdrom/ e:
CDPATH=".:~/drive-letters" # you will have to put this one in your ~/.bashrc to make it persistent

이제 다음을 수행할 수 있습니다.

cd c:
cd e:

답변4

물리적 파티션을 언급하는 경우 이는 /Volumes/PartitionNameMac에 마운트됩니다.

F:\Dir1\Dir2는 /Volumes/PartitionName/Dir1/Dir2/ 'NIX는 각 볼륨의 "현재 디렉터리"를 기억하지 못하지만 환경 변수에 저장할 수 있습니다.

CD_1=`pwd`

현재 디렉토리는 저장되며 $CD_1을 사용하여 액세스할 수 있습니다.

symlinks또 다른 옵션은 관심 있는 디렉터리를 만드는 것입니다 .

관련 정보