이미 답이 있을 수도 있는 질문을 할 위험을 무릅쓰고, 내 터미널에 설치되지 않은 프로그램/응용 프로그램에 대해 내 터미널에서 온라인 리소스/맨 페이지 읽기/온라인 도구를 읽을 수 있는지, 그리고 어떻게 할 수 있는지 아는 사람이 있는지 묻고 싶습니다. 시스템.
stackexchange와 Google 검색을 수행했지만 이 문제에 대한 정보를 찾지 못했습니다.
예를 들어 man grep
grep 매뉴얼이 예상대로 표시됩니다. 반면에 설치되지 않았기 때문에 man agrep
오류가 나타납니다. agrep
읽으려면 다음과 같은 결과를 얻어야 agrep manual
합니다 .google agrep man pages
https://linux.die.net/man/1/agrep
추신: 그런데, 이상하다고 생각해요http://man7.org/linux/man-pages/dir_all_alphabetic.htmlAgrep을 제공하지 않습니다.
man agrep
agrep을 설치하지 않고 터미널에서 agrep 또는 유사한 명령을 실행하고 일반적인 man 작업처럼 터미널에서 agrep 매뉴얼 페이지를 읽을 수 있는지 궁금합니다 .
전 세계의 모든 매뉴얼 페이지를 로컬에서 사용할 수 있을 것이라고 기대하지는 않습니다. 브라우저를 열지 않고도 man(또는 다른 명령)을 사용하여 제거된 프로그램에 대한 매뉴얼 페이지를 검색하고 표시하는 까다로운 방법이 있는지 궁금합니다. 키워드 입력, 결과 검색 등
추신: Kusalananda가 지적했듯이 네트워크 쿼리를 요청하면 특정 배포에 적합하지 않은 결과가 발생할 수 있습니다(다른 버전에 대한 결과가 팝업됩니다). 따라서 (내 꿈에서) 가장 좋은 것은 내 설정을 위해 특별히 온라인 매뉴얼 페이지를 검색할 수 있는 배포판 특정(내 경우에는 데비안) 내부/내장 명령(또는 스위치)이 있는 것입니다. : man --online agrep
또는 onlineman agrep
). 그렇지 않은 것 같습니다.
답변1
당신은 그것을 사용할 수 있습니다 links
: links -dump https://linux.die.net/man/1/agrep | less
. 카테고리와 이름을 변경하면 됩니다.
답변2
Ubuntu인 경우 패키지 dman
의 명령을 사용할 수 있습니다 bikeshed
. ~에서man dman
:
dman is a script that remotely retrieves manpages from
http://manpages.ubuntu.com, but reads them on the local system.
This is often useful to read a manpage of a utility that you do not
have installed on the local system.
It will cycle through each manpage section available for a given TOPIC.
IIRC dman
는 스크립트이므로 수정하여 사용할 수 있습니다.https://manpages.debian.org.
답변3
대안으로 고려할 수 있습니다.밥캣 텍스트 브라우저대신에. 이렇게 하면 다음과 같이 입력하면 됩니다.
lynx https://linux.die.net/man/1/agrep
그것은 많은 상황에서 나에게 효과적이었고 많은 시스템의 소프트웨어 저장소에서 널리 사용 가능한 것 같습니다.
귀하의 시스템에 어떤 버전이 있는지 아는 것에 관해서는 귀하가 설치한 시스템에서 버전 번호를 확인하고 읽으려는 매뉴얼 페이지를 살펴보지 않고서는 이를 알 수 있는 방법이 없다고 생각합니다.
답변4
온라인 서비스를 사용하여 매뉴얼을 표시하는 것은 좋지만 설치 패키지에서 매뉴얼 페이지를 추출하는 것에 대한 @Kusalananda의 의견을 읽자마자 내 컴퓨터에서 읽을 수 있도록 어떤 방식으로든 이 기술을 구현하는 데 집착하게 되었습니다. 배포 올바른 매뉴얼.
아래 솔루션의 유일한 버그는 최신 버전의 apt/dpkg를 기반으로 한다는 점입니다. 이는 Debian Testing 8.6에서 사용할 수 있지만 다른 시스템에서는 사용할 수 없을 수도 있습니다.
다운로드하지 않고 .deb 파일에서 매뉴얼 페이지 추출
관련 패키지(예: yade)를 설치하려는 경우 deb 파일을 찾으세요.
apt-get --print-uris download yade
'http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb' yade_2016.06a-7_amd64.deb 1621148 SHA256:26c0d84484a92ae9c2828edaa63243eb764378d79191149970926aa3ec40cdd4
추신: --print-uris 스위치는 deb 패키지의 URL을 인쇄하지만 deb는 다운로드되지 않습니다.
이 deb 파일에 숨겨진 매뉴얼 페이지를 찾으십시오:
dpkg -c <(curl -sL -o- http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb) |grep "man/man" |grep -vE "\/$" |awk '{print $NF}'
./usr/share/man/man1/yade-batch.1.gz
./usr/share/man/man1/yade.1.gz
맨페이지 yade.1.gz를 읽어보세요(deb 다운로드가 필요하지 않음):
man <(dpkg-deb --fsys-tarfile <(curl -sL -o- http://httpredir.debian.org/debian/pool/main/y/yade/yade_2016.06a-7_amd64.deb) |tar -xO ./usr/share/man/man1/yade.1.gz)
매뉴얼 페이지는 man 애플리케이션을 사용하여 올바르게 표시됩니다.
apt --version --> apt 1.4~beta2 (amd64)
dpkg --version --> Debian 'dpkg' package management program version 1.18.18 (amd64).
man --version --> man 2.7.6.1
tar --version --> tar (GNU tar) 1.29
curl --version --> curl 7.51.0 (x86_64-pc-linux-gnu) libcurl/7.51.0 GnuTLS/3.5.7 zlib/1.2.8 libssh2/1.7.0 nghttp2/1.17.0 librtmp/2.3
또 다른 방법은 deb 파일을 다운로드하는 것입니다.
고전적인 apt-get, ar 및 tar를 기반으로 한 벨로우즈 접근 방식은 모든 배포판에서 작동합니다.
deb 파일이 현재 작업 디렉토리에 다운로드되고 맨페이지가 추출된 후 파일이 삭제됩니다.
pkg="$1"
apt-get download "$pkg" 2>/dev/null
debname=$(find . -name "$pkg*.deb")
datatar=$(ar t "$debname" |grep "data.tar")
#ar t prints out the contents of the archive
if [[ ${datatar##*.} == "gz" ]];then #extension check
options="z"
elif [[ ${datatar##*.} == "xz" ]];then
options="J"
else
echo "data.tar archive inside deb is not a gz or xz archive. Exiting"
exit 1
fi
manpage+=($(ar p $debname $datatar | tar t"$options" |grep "man/man" |grep -vE "\/$" |awk '{print $NF}')) #tar t lists the files included in archive
man <(ar p "$debname" "$datatar" | tar xO"$options" ${manpage[@]})
#ar p and tar -O prints archive files / contents in stdout to be read by man
rm -f $debname #or rm -i for more control.
manpages.debian.org를 사용하세요
세 번째 옵션으로, 2017년 1월부터 누군가 별칭/스크립트를 사용하여 새로운 데비안 맨페이지 웹사이트를 기반으로 데비안 nline에서 맨페이지를 추출할 수 있습니다. 그러면 현재 사용 중인 패키지의 올바른/최신 버전으로 직접 이동할 수 있습니다. 맨 페이지에서. 생각하다:
alias debman='function __debman { links -dump https://manpages.debian.org/jump?q=$1 |awk "/Scroll to navigation/,0" |less; };__debman'
터미널을 통해 호출$ debman yade