====== fd ====== * https://github.com/sharkdp/fd * 고속 파일 탐색. [[linux:find|find]] 보다 훨씬 빠르다. * 검색 결과를 가지고 parallel 로 다른 명령을 실행하게 할 수 있다. - 기본 CPU core 갯수만큼의 쓰레드 생성. ===== 설치 ===== sudo apt-get install fd-find alias fd=fdfind ===== 사용 ===== # 기본 - regex 로 검색 fd .*\Verdi.*.mp3 # glob 검색 fd -g *.mp3 # glob + hidden(.dir) 포함 fd --glob -hidden *.mp3 # 검색 결과에 명령실행. 끝에 세미콜론(;)을 만날때까지 명령으로 간주 # 검색 한건당 명령실행 (-x 소문자 / --exec) fd -g *.mp3 -x ls -lah {}; # 검색 결과 전체를 한 번에 인자로 전달 (-X 대문자 / --exec-batch) fd -g *.mp3 -X ls -lah {}; # 특정 디렉토리에서 검색 - 마지막 인자로 경로 지정 fd -g *.mp3 ~/Music * ''%%-I, --no-ignore%%'' : 기본적으로 ''.gitignore'', ''.ignore'', ''.fdignore'' 파일에 지정된 것은 검색 결과에서 제거하는데, 이 옵션을 주면 모두 포함시킨다. ===== -x (--exec) Parallel 명령 실행 ===== * ''-x'' 옵션은 멀티 쓰레드로 명령을 실행한다. * ''%%-j, --threads%%'' 로 쓰레드 갯수를 지정할 수 있으며, 기본은 CPU Core 갯수이다. ===== -x(--exec)/-X(--exec-batch) 검색 결과 대입 ===== * ''%%{}%%'': path - 파일의 전체 경로. 보통 이것 사용. * ''%%{/}%%'': basename * ''%%{//}%%'': parent directory * ''%%{.}%%'': path without file extension * ''%%{/.}%%'': basename without file extension