Windows 7에서 폴더 이름을 빠르게 복사해야 하는 경우가 종종 있기 때문에 선택한 폴더의 이름만 폴더에 복사하는 확장 컨텍스트 메뉴(즉, +를 Copy as path
수행할 때)에 나타나는 항목 과 동등한 항목을 만들려고 합니다. 클립보드.ShiftRight Click
다음 위치에서 레지스트리 키를 만들었습니다.
HKEY_CLASSES_ROOT\Directory\shell\Copy folder name\command
...폴더에 대한 유사한 상황에 맞는 메뉴 추가 항목은 모두 여기에 있으며 여기에서 볼 수 있습니다.
그러나 지금까지 키가 정상적으로 작동하도록 실행해야 하는 코드를 얻을 수 없었습니다. 나는 우연히 만났다이 솔루션은 디렉토리의 현재 폴더를 가져옵니다, 그리고이것은 디렉토리 이름을 클립보드로 파이프하는 것입니다., 이를 함께 모아 다음을 얻습니다.
for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip
이 코드는 명령줄에서 예상한 대로 정확하게 작동합니다.
cmd /c
레지스트리에서 CMD 인스턴스를 실행하는 데 필요한 앞에 추가하면 다음이 제공됩니다.
cmd /c for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip
Default
그러나 이것을 키 의 문자열 값 의 값 데이터에 넣은 다음 \Copy folder name\command
폴더를 마우스 오른쪽 버튼으로 클릭하고폴더 이름 복사작동하지 않습니다.
따옴표로 묶어도 아무 일도 일어나지 않습니다.
cmd /c "for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip"
내가 여기서 무엇을 놓치고 있는 걸까요?