파일 검색 명령을 실행 중인데 ag -g foo
찾은 파일의 내용을 보고 싶습니다.
이렇게 하면 ag -g foo | xargs more
명령 more
은 터미널 창에서 한 번에 여러 파일을 볼 수 있을 만큼 작은 파일이라도 스페이스바를 눌러 각 파일 사이로 이동하게 합니다.
이렇게 하면 ag -g foo | xargs cat
한꺼번에 다 보이는데, 파일들이 뒤죽박죽이어서 새 파일이 어디서 시작되는지 알기가 어렵습니다.
한 스크롤에서 모든 파일을 볼 수 있지만 각 파일의 제목을 포함하는 방법이 있습니까?
답변1
xargs
제목을 추가하도록 지시할 수 있습니다 .
ag -g foo | xargs sh -c '
for file do
printf "====== %s =====\n" "$file"
cat -- "$file"
done' sh
또는 루프를 사용할 수 있습니다.
ag -g foo |
while IFS= read -r file; do
printf '======== %s =======\n' "$file"
cat -- "$file"
done | less
(이는 ag
예상되는 매우 구체적인 형식이 아니라 한 줄에 하나의 파일 이름이 출력된다고 가정합니다 xargs
.)