2014-11-19 1 views
1

나는 파일 이름의 목록을 만들고, 내가 원하는 것들의 자격을했다. 이제이 목록에서 "ls -l"을 실행하고 그 결과를 dired-mode 버퍼에 넣고 싶습니다. 지금은 find-grep-dired를 실행하여 정규식과 일치하는 파일을 얻습니다. 그러나 find 명령은 내 환경에서 실행하려면 몇 분이 걸리며, 그리고 여러 패턴 각각에 대해 여러 번 실행해야합니다. 나는 너무 기다려서 결과를 기다리는 데 참을성이 없어.어떻게하면 dired 모드로 버퍼를 넣을 수 있습니까?

나는 ls -l 값을 버퍼로 읽고 "dired-mode"를 실행 해 보았습니다. 그러나 "dired-mode"는 기능이 아닙니다. 더 많은 것은 동정입니다.

감사합니다.

+0

안녕하세요, 당신의 "자격"이며, 무엇을 이해하지 못했다는 -l'하지만 grepping에 대한 LS '에 대해 얘기하는 이유. 어쨌든'helm-grep'은 원래 emacs의 grep보다 빠르며 'ack'는 가장 빠른 것으로 간주됩니다 : https://github.com/emacs-helm/helm/wiki와 https : // github .com/syohex/emacs-helm-ack – Ehvince

+1

이 스레드가 도움이 될 것 같아요 : http://superuser.com/a/807979/206164 기본적으로 목록을 만들고 관련없는 다양한 파일로 dired 버퍼를 열고 (예 :'dired '("* my-dired-buffer *" "DIR1" "FILE1" "DIR2" "FILE2" "FILE3"))' – lawlist

+0

Dired-mode는'ls'를 사용하기 때문에 아무 것도 없다. 'ls'를 미리 실행해야하는 이유 -'dired-listing-switches'를 원하는대로 설정하십시오 - 함수의 지속 기간 동안 let-bound 될 수 있고, (이전 주석에 나열된) 버퍼는 파일 및 디렉토리를 해당하는'ls' 세부 사항으로 대체합니다. – lawlist

답변

0

엄밀히 말하면, 질문에 대한 답은 다음과 같습니다

M-Xvirtual-diredRET

당신이 다음이 명령은 dired 버퍼로 변환합니다 ls -lR <dir>의 출력을 포함하는 버퍼가있는 경우.

-R 인수는 나열된 각 디렉토리의 경로가 포함되어 있음을 의미하며 이맥스는 디렉토리 경로를 묻는 메시지를 표시 할 때이 값을 기본값으로 사용합니다.

물론 항상 이 필요합니다. 재귀 목록이 필요합니다. ls -l을 통해 디렉토리 목록을 하나만 작성한 경우 해당 헤더 행은 포함되지 않으므로 프롬프트에 수동으로 디렉토리를 입력해야합니다. 당신은 쉽게 자신이 문제를 해결하려면 그 라인을 생성 할 수 있습니다 물론

:

printf "%s:\n" $(pwd) && ls -l 

편집 : 나는이 자동 -되지 않습니다 dired-x 라이브러리의 일부 통지하지 않았다 짐을 실은. 설명서를 참조하십시오 :
C-H내가그램(dired-x)RET

+0

이상합니다. 나는 24.3.1의 이맥스를 가지고 있지만, 나는 virtual-dired가 없다. 그 세부 사항 이외에,이 문서와 이맥스 위키의 문서는 이것이 내가 필요로했던 것임을 암시하는 듯하다. –

관련 문제