Mercurial을 사용할 때 나는 종종 다음과 같은 작업을 수행합니다.
vim <(hg cat -r 42 somefile)
하지만 수백 줄이 넘는 파일을 사용하려고 하면 vim에서 읽기 오류가 발생하고 처음 몇 백 줄만 포함됩니다. vim 대신 gvim을 사용하면 다음과 같은 오류가 발생합니다.
E211: FIle "/proc/3546/fd/63" no longer available
이것이 작동하지 않아야합니까? 관련이 있는지는 모르겠지만 bash와 zsh에서 동일한 결과로 시도했으며 또한 시도했습니다.
cat <(hg cat -r 42 somefile)
전체 파일이 예상대로 인쇄되었습니다.
답변1
이는 일반 파일이 아닌 파이프입니다. 파일 설명 자가 닫히면 vim
사라집니다 . 다음을 수행할 수 있습니다.
hg cat -r 42 somefile | vim -
( vim
이는 일반 파일이 아닐 수도 있으므로 그에 따라 행동하십시오. 종료 시 데이터가 저장되지 않는 것에 대해 불평하고 싶지 않으면 vim -R -
또는 를 사용하십시오.)view -
vim
또는 zsh
임시 파일을 사용하십시오.
vim =(hg cat -r 42 somefile)