일반 사용자는 / usr / share / doc의 설명서를 어떻게 읽습니까?


43

나는 최근에에 엄청난 양의 문서가 있다는 것을 배웠다 /usr/share/doc.

관리 권한이 없으면 직접 액세스 할 수 없도록 많은 부분이 압축 된 것처럼 보입니다.

$ gunzip examples/letter.tex.gz 
gzip: examples/letter.tex: Permission denied

이것에 대한 한 가지 해결책은 모든 사용자가 홈 디렉토리의 각 항목을 읽기 만하면 읽을 수 있지만이 배열은 정기적 인 탐색에 도움이되지 않는 것 같습니다.

평범한 사람들이이 문서를 어떻게 읽습니까?

일반 사용자가 로컬 텍스트 설명서를 읽기 위해 웹 서버를 설치하고 유지해야한다고 생각하지 않습니다.


분명히 말해서, / usr / share / doc 디렉토리 또는 TeX / LaTeX 디렉토리에있는 문서를 다루는 데 관심이 있습니까?
belacqua

좋아, 하나 더 질문-.tex 파일을 dvi 등으로 처리해야합니까, 아니면 소스 코드를보아야합니까?
belacqua

1
나는 /usr/share/doc일반적으로 문서에 대해 묻고 있으며 많은 부분이 압축 형식으로 저장되어 있다는 관찰에 특별한주의를 기울이고 있습니다. 형식화되지 않은 LaTeX로 저장된 문서가있는 경우 아직 문서를 찾지 못했습니다. 위에서 언급 한 특정 예제는 패키지의 LaTeX 템플릿입니다 texlive-latex-extra-doc.
ændrük


1
askubuntu.com/questions/24072/… . 나는 이것이 하나의 설정 모두에 가장 적합한 솔루션이라고 생각하고 그 후에 작동합니다.
nelaaro

답변:


6

대부분 터미널에서 사용하기 위해 jgbelacqua 가 말하고 아주 잘 설명했습니다 . 데스크톱 관리자에있는 사람들을 위해 이것을 추가하기 만하면됩니다.

그래픽 데스크탑 (여기 그놈)에서 문서를 읽는 가장 쉬운 방법 /usr/share/doc은 표준 아카이브 관리자 (여기서는 파일 롤러)를 사용하여 압축 된 파일을 두 번 클릭하여 열 수있는 곳입니다. 표준 편집기 (여기서는 Gedit) 파일의 압축을 풀지 않으면 쓰기 권한이 필요하지 않습니다.


훌륭한 해결책. 이것이 실제로 사람들이 Ubuntu, Gnome 등과 같은 것을 사용하는 이유입니다. 이런 종류의 작업이 더 쉬워졌습니다.
belacqua

20

여기에는 최소한 두 가지 문제가 있습니다.

  1. 고통없이 .gz 파일 읽기
  2. 디렉토리에 대한 권한
  3. (tex 파일의 경우 선택 사항)

들어 # 1 , 완벽하게 gzip으로 압축 된 파일에 대응합니다 응용 프로그램은 여러 가지가있을 수 있습니다. 당신이 사용할 수있는 몇 가지 있습니다 lessvim.

 less README.gz 
 vim -R README.Debian.gz
 view Important.bits.gz

view에 대한 별칭으로 vim -R파일을 읽기 전용으로 열라고 말합니다.

옛날에는 시스템에 설치하기 전에 gzcat출력을 사용 하여 다른 유틸리티로 파이프했습니다. 분명히 zcat우분투에서는 지금 만 호출 되지만 다음과 같이 사용합니다.

 /usr/share/doc/xpdf$ zcat changelog.Debian.gz  | more

zcat을 계속 사용할 수 있으며 압축 된 컨텐츠를 파이프로 파이프하는 데 유용 할 수 있습니다. (.bz2 파일 bzcat이있는 상황에서는 사용 가능합니다.)

들어 # 2 , 내가는 / usr / share / doc에서 본 적이있는 모든 파일을 모든 사용자가 디렉토리를 (예를 들어, 목록의 내용) 검색 및 내부 파일을 읽을 수 있다는 것을 의미, 다른 + RX 권한이있는 디렉토리에 있습니다. 당신이 할 수없는 것은 (기본적으로 루트 만 쓰기 권한이 있기 때문에) 파일을 만드는 것입니다. 해당 디렉토리에 압축을 풀려고 시도하기 때문에 기본적으로 읽기 권한은 있지만 쓰기 권한이 없기 때문에 권한이 거부되었다고 생각합니다.

# 3의 경우 .tex 파일을 사용하는 것보다 더 많이 사용하는 것 같습니다. 그러나 집이나 임시 파일로 복사하지 않고 처리하는 방법이 있습니다. 이를 위해 명명 된 파이프를 만들지 만 다른 텍스 파이핑 및 처리 요구에 재사용 할 수 있습니다. 다음과 같이 진행되어야합니다.

  • zcat 또는 gzcat 텍스트
  • ... TeX 프로세서로 파이프
  • ... 그리고 그것을 당신의 명명 된 파이프로 보내십시오 (여기서 전화하겠습니다 pipey)
  • ... 그리고 별도의 화면에서 pipey의 출력을 가져옵니다.
  • ... 그리고 그것을 dvi 디스플레이 프로세스로 보냅니다.

여기에있는 것과 다르거 나 더 나은 유틸리티를 사용하는 경우 이러한 단계를 분명히 변경할 수 있습니다.

이 예에서는 mkfifo유틸리티를 사용하여 명명 된 파이프를 만듭니다 pipey. 처리 할 대상 파일은 /usr/share/doc/gdb/refcard.tex.gz입니다. 터미널, Alt + F2 등을 통해 사용 가능한 두 개의 셸 명령 줄이 필요합니다.

터미널 1을 입력합니다 :

mkfifo pipey

이제 영구 명명 된 파이프가 있습니다. 당신은 ls -l그것을 들여다 볼 수 있습니다 .

zcat /usr/share/doc/gdb/refcard.tex.gz | tex > pipey

명명 된 파이프로 전달 된 출력으로 작업을 수행 할 때까지이 명령이 반환되지 않습니다.

이제 터미널 2에 다음을 입력하십시오. tex pipey | xdvi

그리고 그것은 잘 작동합니다 (어쨌든 여기서). 더 예쁘게 출력 할 수 있도록 프로세스를 개선 할 수 있지만 빠르고 비교적 혼잡하지 않은 방법을 찾고 있다면 그 방법 중 하나입니다.


1
내 해결책을 확인하십시오. 감명받을 것입니다. askubuntu.com/questions/24072/…
nelaaro

1
세부 사항은 +1입니다. 나에 관해서는 @nelaar에서 언급했듯이 Apache <Directory "/usr/share/doc/">디렉토리 선언에 몇 가지 지시문을 추가하면 (보통로 /etc/apache2/sites-enabled/000-default) 브라우저 자체에서 압축 해제가 처리된다고 생각합니다. ( AddEncoding x-gzip gz tgzAddType text/plain .gz).
삭제

이것은 많은 유용한 명령에 대한 놀랍고 상세한 교훈 이었지만 일반적인 사용자 가 시스템 설명서를 읽는 방법에 대한 좋은 해결책은 아닙니다 . 우분투를 들어, 그놈의 큰소리로 말하다 데비안의 dwww은 입니다 가장 고통없는, 쉬운 방법. 내 대답은 후자를 설명합니다 : askubuntu.com/a/52419/11015
MestreLion

1
@MestreLion 가장 현실적인 의미에서 '일반적인 사용자'는 파일이 있다는 것을 모릅니다. 가장 쉬운 해결책은 내가 처음 언급 한 방법이라고 생각합니다 less. 이것은 모든 최신 * nix 시스템에 기본적으로 설치되는 추가 이점이 있습니다. 파일이 있다는 것을 알고 일년에 몇 번 이상 파일을 참조하려는 사용자에게는 dwww와 같은 것을 설치하는 것이 훌륭한 솔루션처럼 들립니다. 나 자신은 조금씩 dwww를 기억하지 못할 수도 있지만 'less'와 같은 기본 명령을 기억할 것입니다. 또는 Takkat이 말했듯이 노틸러스 / 파일 롤러 등.
belacqua

13

어쩌면 그것은 대답하기에 너무 늦었지만 최선의 해결책을 찾았습니다 (사용 편의성과 완전성 모두)

일반적인 Linux 시스템에는 다양한 형식 (설명서 페이지, 정보 파일, README 등)의 설명서가 있습니다. dwww를 사용하면 WWW 브라우저와 같은 인터페이스를 통해이 모든 것에 액세스 할 수 있습니다. 따라서 설명서를보다 쉽게 ​​사용할 수 있습니다.

dwww는 데비안 시스템의 모든 온라인 문서에 대한 웹 인터페이스입니다. 설치된 모든 문서를 나열하는 일부 웹 페이지를 작성하고 모든 문서를 HTML로 변환합니다. 사용자가 문서를 요청할 때 변환이 수행됩니다.

  • 최근 Ubuntu / Apache에서 더 이상 기본적으로 활성화되어 있지 않은 CGI 모듈을 활성화하십시오.

    sudo a2enmod cgi
    sudo service apache2 restart
    
  • 브라우저를 열고 http : // localhost / dwww /를 가리 킵니다.

  • 끝난!

한 곳에서 모든 info페이지, man페이지, /usr/share/doc파일 패키지 설명! 개인 문서 웹 사이트!


이 방법을 사용하십시오. 통증이 적습니다. 검색 창 같은 Google을 사용하면 매우 빠르게 검색 할 수 있습니다.
호기심 많은 견습생

1
다음 방문자는 CGI를 활성화하고 Apache 서비스를 다시 시작해야합니다. askubuntu.com/questions/581118/…
Sergiy Kolodyazhnyy

7

gunzip file.gz압축을 시도 file.gz하려면 file, 제거 file.gz. 그래서 "권한 거부"오류가 발생하여에 쓸 수 없습니다 /usr/share/doc. 파일의 내용을 얻으려면 gunzip -c file.gz또는을 사용하십시오 zcat file.gz.

gzip으로 압축 된 텍스트 파일을 읽을 수 있습니다 zless. 이름에서 알 수 있듯이 lessgzip 압축 파일의 경우는 그렇습니다.

사용법 예 :

zless /usr/share/doc/bash/NEWS.gz

.gz접미사가 아니라 생략 될 수있다 :

zless /usr/share/doc/bash/NEWS

최근의 시스템에, 나는 지정할 수 없었습니다 zless으로, less자동으로 처리합니다.
belacqua

1
@belacqua 사실, 요즘도 마찬가지입니다. LESSOPEN그리고 LESSCLOSE환경 변수 와 관련이 있다고 생각합니다 .
Lekensteyn

5

먼저 apache2를 설치하십시오

sudo apt-get install apache2 apache2-doc  

apache2-doc특별한 경우입니다. /usr/share/doc/웹 브라우저를 통해 문서를 찾아 볼 수 있습니다 . 이리저리 http://localhost/doc/.

그래도 제대로 작동하지 않습니다. 압축을 풀고 * .gz 파일을 일반 텍스트로 표시하려면 Apache 구성을 변경해야합니다.

/usr/share/doc/디렉토리 에 * .gz 문서의 내용을 표시하기 위해 Apache를 사용하는 방법을 얻기 위해 Stack Overflow게시했습니다 . 이것이 가능한 해결책으로 게시 된 것입니다.

다음은 간단한 지침입니다. Apache에게 .gz 파일을 처리하여 일반 텍스트로 처리하고 브라우저에 일반 텍스트로 보내는 방법을 알려줍니다.

sudo a2enmod headers   
sudo a2enmod deflate  
gksu gedit /etc/apache2/sites-enabled/000-default 

파일 맨 아래로 이동하여 섹션을 찾은 후 Alias /doc/ "/usr/share/doc/" 다음과 같이 변경하십시오.

Alias /doc/ "/usr/share/doc/"
<Directory /usr/share/doc>
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128

    AddEncoding gzip gz
    <FilesMatch "\.gz$">
      ForceType text/plain
      Header set Content-Encoding: gzip
    </FilesMatch>
</Directory>   

그런 다음 Apache를 다시 시작하십시오.

sudo apache2ctl restart   

1
이것이 다른 해결책인지 확실하지 않습니다. 방금 AddEncoding x-gzip gz tgz AddType text/plain .gz<Directory "/usr/share/doc/">항목에 추가했는데 감압이 실제로 클라이언트 측에서 처리된다고 생각합니다.
삭제

@Alain, 아니요 다른 해결책은 아닙니다. 이것은 본질적으로 내가하고있는 일입니다.
nelaaro

나는 이것이 최선의 해결책이라고 생각하지만 (브라우저를 사용하여 문서를 탐색 할 수있는 것은 아무것도 없습니다), 그 목적을 위해 전체 웹 서버를 설치하는 데 큰 어려움이 있습니다. 정말 리눅스 (원하는 yelp아마도?) 가지고 있는 워드 프로세서를 읽을 수있는 박스 아웃의 길을.
MestreLion 2016 년

업데이트 : 솔루션이 완벽하게 작동했습니다 !!! mod "deflate"은 이미 사용 가능한 상태였으며, sudo service apache2 restart표준화를 위해 마지막 줄을 변경했습니다 . 마지막으로, reades는 "/"뒤에 알고 : 그것은 있어야로컬 호스트 / 문서 / , 로컬 호스트 / 문서는 하지 않습니다 작동합니다.
MestreLion 2016 년

-3

.tex 파일을 읽어서는 안됩니다! 인간이 읽을 수있는 형식이지만, 랜딩 전에 처리되도록 설계되었습니다. tex2pdf 도구를 사용하여 .pdf로 변환 할 수 있습니다.


1
1) LaTeX 소스를 읽고 싶습니다 . 2) 명령은 pdflatex입니다. 3) 파일을 읽기 전에 파일을 압축해야하는 문제와 관련이 있습니다.
ændrük
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.