Существует ли формальный способ доступа к этому документу в / usr / share / doc? [dубликат]

Недавно я узнал, что в /usr/share/doc есть огромная куча документации.

Похоже, что большая часть ее gzipped так, что она не доступна напрямую без административных привилегий:

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

Хотя одним из решений для каждого пользователя было бы дублировать каждый элемент в своем домашнем каталоге только для его чтения, эта схема вряд ли будет способствовать регулярному просмотру.

Как нормальные люди читают это документация?

Я не склонен полагать, что типичный пользователь должен установить и поддерживать веб-сервер, чтобы читать локальную текстовую документацию.

37
задан 10 July 2011 в 19:32

48 ответов

gunzip file.gz пытается распаковать file.gz до file, удалив file.gz. Вот почему вы получаете ошибку «Отказано в разрешении», вам не разрешено писать в /usr/share/doc. Чтобы получить содержимое файла, используйте gunzip -c file.gz или zcat file.gz.

Чтение gzip-сжатых текстовых файлов может быть выполнено с помощью zless. Как показано в названиях, это просто less, но для gzip-сжатых файлов.

Пример использования:

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

Суффикс .gz также может быть опущен :

zless /usr/share/doc/bash/NEWS
7
ответ дан 5 August 2018 в 09:45
  • 1
    В последних системах мне не нужно было указывать zless, так как less будет обрабатывать его автоматически. – belacqua 3 May 2012 в 20:45
  • 2
    @belacqua Правда, я делаю то же самое в наши дни. Я предполагаю, что это имеет какое-то отношение к переменным среды LESSOPEN и LESSCLOSE. – Lekensteyn 4 May 2012 в 01:38

Возможно, слишком поздно, чтобы ответить, но я нашел лучшее решение (как простота использования, так и полноту)

Установить dwww Типичная система Linux имеет документацию во многих форматы (страницы руководства, информационные файлы, README и т. д.). dwww позволяет получить доступ ко всем этим через один и тот же интерфейс, WWW-браузер. Это облегчает использование документации. dwww - это веб-интерфейс для всей онлайновой документации по системе Debian. Он создает некоторые веб-страницы, которые перечисляют все установленные документы и преобразует все документы в HTML. Преобразование выполняется, когда пользователь запрашивает документ. Установить dwww Готово!

Все ваши info страницы, man страницы, /usr/share/doc файлы и описание пакета в одном месте! Ваш личный сайт документации!

13
ответ дан 5 August 2018 в 09:45
  • 1
    Используйте этот метод. Это меньше боли. И вы можете искать вещи очень быстро, так как у вас будет Google, как окно поиска. – Curious Apprentice 2 May 2012 в 11:17

Не следует читать файлы .tex! Он находится в удобном для чтения формате, но он предназначен для обработки перед чтением. Вы можете использовать инструмент tex2pdf, чтобы преобразовать его в .pdf.

-3
ответ дан 5 August 2018 в 09:45
  • 1
    1) I хочет, чтобы читал источник LaTeX. 2) Команда pdflatex. 3) Это касательно вопроса, связанного с необходимостью уничтожить файл перед его чтением. – ændrük 31 January 2011 в 23:44

Здесь есть как минимум два вопроса:

чтение файлов .gz безболезненно разрешений на каталоги (необязательно для файлов tex)

Для # 1 существует ряд приложений, которые будут легко справляться с файлами gzipped. Пара, которую вы можете использовать, - less и vim.

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

view является псевдонимом для vim -R, который просто говорит, чтобы открыть файл только для чтения.

В старые времена, прежде чем меньше было установлено в моей системе, я использовал бы gzcat и передал бы результат в другую утилиту. По-видимому, он теперь называется только zcat на Ubuntu, но вы будете использовать его так, например:

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

zcat все еще доступен, и использование его для сжатия сжатого содержимого где-то может быть полезно в в некоторых случаях. (Для ситуаций с файлами .bz2 доступно bzcat.)

Для # 1 все файлы, которые я видел в / usr / share / doc, являются в каталогах с другими правами + rx, что означает, что все пользователи могут искать каталоги (например, содержимое списка) и читать файлы внутри. То, что вы не можете сделать (поскольку только root имеет разрешение на запись по умолчанию), заключается в создании файлов. Поскольку вы пытаетесь разархивировать в этот каталог, я предполагаю, что он разрешает вам разрешение, поскольку по умолчанию вы читали, но не писали разрешения.

Для # 3, я предполагаю, что вы используете .tex-файлы больше, чем я. Но вот один из способов справиться с ними без копирования на дом или временного файла. Для этого вы собираетесь создать именованный канал, но вы можете повторно использовать его для других ваших потребностей в технологиях tex и обработки. Он должен выглядеть следующим образом:

zcat или gzcat текст ... и передать его на ваш процессор TeX ... и отправить его в свою именованную трубу (здесь я назову его pipey) ... а затем в отдельном экране хватайте свой вывод от pipey ... и отправляйте это на процесс отображения dvi.

Вы можете, очевидно, изменить эти шаги, если вы используете разные или лучшие утилиты, чем те, которые есть здесь.

В моем примере будет использоваться утилита mkfifo для создания именованного канала, pipey. Целевым файлом для обработки является /usr/share/doc/gdb/refcard.tex.gz. Вам понадобятся две доступные командные строки оболочки (через терминал, Alt + F2 или же).

Вы наберете один терминал:

mkfifo pipey

Теперь у вас есть постоянный именованный канал. Вы можете использовать ls -l, чтобы заглянуть в него.

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

Обратите внимание, что эта команда не вернется, пока вы ничего не сделаете с выходом, который ушел в именованный канал.

Теперь, в конце второго, вы наберете: tex pipey | xdvi

И он работает (ну, вот так или иначе). Процесс может быть усовершенствован для более качественного вывода, но если вы ищете быстрый и относительно беспорядочный, это один из способов сделать это.

19
ответ дан 7 August 2018 в 03:38
  • 1
    Проверьте мое решение, я думаю, вы будете впечатлены. [D0] askubuntu.com/questions/24072/&hellip – nelaaro 11 March 2011 в 15:32
  • 2
    +1 для деталей. Что касается меня, как уже упоминалось в @nelaar, я просто добавляю несколько директив в объявление каталога Apache <Directory "/usr/share/doc/"> (обычно в /etc/apache2/sites-enabled/000-default), и я считаю, что декомпрессии обрабатываются самими браузерами. (AddEncoding x-gzip gz tgz и AddType text/plain .gz). – Delete 22 March 2011 в 14:07
  • 3
    Хотя это был потрясающий и подробный урок многих полезных команд, это вряд ли является хорошим решением для того, как ожидается, что типичный пользователь прочитает системную документацию. Для Ubuntu Gilome's yelp или dwww Debian [] наиболее безболезненный, простой метод. Мой ответ описывает последнее: askubuntu.com/a/52419/11015 – MestreLion 3 May 2012 в 02:41
  • 4
    @MestreLion «Обычный пользователь» в самом реалистичном смысле не знает, что файлы даже там. Я думаю, что самым простым решением является тот, который я упомянул первым - используя less. Это имеет дополнительное преимущество при установке по умолчанию в каждой современной системе * nix. Для пользователя, который знает, что есть файлы, и хочет ссылаться на них более двух раз в год, установка чего-то типа dwww звучит как отличное решение. Сам я, в крайнем случае, я, возможно, не помню dwww, но я буду помнить основные команды вроде «меньше». Или, как сказал Таккат, Nautilus / fileroller / etc. – belacqua 3 May 2012 в 20:47

Сначала установите apache2

sudo apt-get install apache2 apache2-doc

apache2-doc. Он позволяет просматривать вашу документацию /usr/share/doc/ через веб-браузер. fro http://localhost/doc/.

Однако это не работает. Вам нужно изменить конфигурацию Apache, чтобы получить ее для распаковки и показать * .gz файлы в виде обычного текста.

Я отправил в Stack Overflow, чтобы получить способ использовать Apache для отображения содержимого * .gz документов в каталоге /usr/share/doc/. Это то, что было опубликовано как возможное решение.

Вот краткие инструкции. Он сообщает 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
5
ответ дан 7 August 2018 в 03:38
  • 1
    Я не уверен, что это другое решение. Я только что добавил AddEncoding x-gzip gz tgz AddType text/plain .gz в мою запись <Directory "/usr/share/doc/">, и я считаю, что декомпрессия фактически обрабатывается на стороне клиента. – Delete 22 March 2011 в 14:00
  • 2
    @Alain, нет, это не другое решение, это, по сути, то, что я делаю. – nelaaro 22 March 2011 в 14:18
  • 3
    Хотя я считаю, что это лучшее решение (ничто не может победить с помощью браузера для просмотра документов), его серьезный избыток для установки всего веб-сервера именно для этого. Я действительно хочу, чтобы Linux (yelp, может быть?) Имел любой вне коробки способ чтения документов. – MestreLion 20 June 2011 в 01:12
  • 4
    Обновление: решение работало отлично !!! mod "deflate" был уже включен из коробки, и я изменил последнюю строку на sudo service apache2 restart ради стандартизации. И последнее, но не менее важное: чтение должно быть известно о завершении «/»: it должно быть localhost / doc / , localhost / doc не будет Работа. – MestreLion 20 June 2011 в 01:26

gunzip file.gz пытается распаковать file.gz до file, удалив file.gz. Вот почему вы получаете ошибку «Отказано в разрешении», вам не разрешено писать в /usr/share/doc. Чтобы получить содержимое файла, используйте gunzip -c file.gz или zcat file.gz.

Чтение gzip-сжатых текстовых файлов может быть выполнено с помощью zless. Как показано в названиях, это просто less, но для gzip-сжатых файлов.

Пример использования:

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

Суффикс .gz также может быть опущен :

zless /usr/share/doc/bash/NEWS
7
ответ дан 7 August 2018 в 03:38
  • 1
    В последних системах мне не нужно было указывать zless, так как less будет обрабатывать его автоматически. – belacqua 3 May 2012 в 20:45
  • 2
    @belacqua Правда, я делаю то же самое в наши дни. Я предполагаю, что это имеет какое-то отношение к переменным среды LESSOPEN и LESSCLOSE. – Lekensteyn 4 May 2012 в 01:38

Возможно, слишком поздно, чтобы ответить, но я нашел лучшее решение (как простота использования, так и полноту)

Установить dwww Типичная система Linux имеет документацию во многих форматы (страницы руководства, информационные файлы, README и т. д.). dwww позволяет получить доступ ко всем этим через один и тот же интерфейс, WWW-браузер. Это облегчает использование документации. dwww - это веб-интерфейс для всей онлайновой документации по системе Debian. Он создает некоторые веб-страницы, которые перечисляют все установленные документы и преобразует все документы в HTML. Преобразование выполняется, когда пользователь запрашивает документ. Установить dwww Готово!

Все ваши info страницы, man страницы, /usr/share/doc файлы и описание пакета в одном месте! Ваш личный сайт документации!

13
ответ дан 7 August 2018 в 03:38
  • 1
    Используйте этот метод. Это меньше боли. И вы можете искать вещи очень быстро, так как у вас будет Google, как окно поиска. – Curious Apprentice 2 May 2012 в 11:17

Не следует читать файлы .tex! Он находится в удобном для чтения формате, но он предназначен для обработки перед чтением. Вы можете использовать инструмент tex2pdf, чтобы преобразовать его в .pdf.

-3
ответ дан 7 August 2018 в 03:38
  • 1
    1) I хочет, чтобы читал источник LaTeX. 2) Команда pdflatex. 3) Это касательно вопроса, связанного с необходимостью уничтожить файл перед его чтением. – ændrük 31 January 2011 в 23:44

Не следует читать файлы .tex! Он находится в удобном для чтения формате, но он предназначен для обработки перед чтением. Вы можете использовать инструмент tex2pdf, чтобы преобразовать его в .pdf.

-3
ответ дан 9 August 2018 в 07:55

gunzip file.gz пытается распаковать файл.gz в файл , удалив file.gz . Вот почему вы получаете ошибку «Разрешить отказ», вам не разрешено писать в / usr / share / doc . Чтобы получить содержимое файла, используйте gunzip -c file.gz или zcat file.gz .

Чтение gzip-сжатых текстовых файлов может быть выполнено с zless . Как показано в названиях, это просто меньше , но для gzip-сжатых файлов.

Пример использования:

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

Суффикс .gz также может быть опущен:

  zless / usr /  share / doc / bash / NEWS  
7
ответ дан 9 August 2018 в 07:55

Возможно, слишком поздно, чтобы ответить, но я нашел лучшее решение (как простота использования, так и полноту)

Типичная система Linux имеет документацию во многих форматах (страницы руководства, информационные файлы, README и т. д.). dwww позволяет получить доступ ко всем этим через один и тот же интерфейс, WWW-браузер. Это облегчает использование документации.

dwww - это веб-интерфейс для всей онлайновой документации по системе Debian. Он создает некоторые веб-страницы, которые перечисляют все установленные документы и преобразует все документы в HTML. Преобразование выполняется, когда пользователь запрашивает документ.

  • Откройте браузер и укажите: http: // localhost / dwww /
  • Done!
  • [ ! d15]

    Все ваши info страницы, man страницы, / usr / share / doc файлы и описание пакета в одном месте! Ваш личный сайт документации!

13
ответ дан 9 August 2018 в 07:55

Сначала установите apache2

  sudo apt-get install apache2 apache2-doc  

apache2-doc - это особый случай Вот. Он позволяет просматривать вашу документацию / usr / share / doc / через веб-браузер. http: // localhost / doc / .

Однако это не работает. Вам нужно изменить конфигурацию Apache, чтобы получить ее для распаковки и показать * .gz файлы в виде обычного текста.

Я отправил в Stack Overflow , чтобы получить способ использования Apache, чтобы показать содержимое * .gz документов в / usr / share / doc / . Это то, что было опубликовано как возможное решение.

Вот краткие инструкции. Он сообщает Apache, как обращаться с .gz-файлами, чтобы обрабатывать их как обычный текст и отправлять их в браузер в виде обычного текста.

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

Перейти к нижней части файла и найти раздел с Alias ​​/ doc / "/ usr / share / doc /" и измените его так, как показано на рисунке.

  Псевдоним / doc / "/ usr / share / doc /" & lt; Directory / usr / share / doc & gt;  Параметры Индексы MultiViews FollowSymLinks AllowOverride Нет Запрет заказа, разрешить Deny from all Разрешить от 127.0.0.0/255.0.0.0 :: 1/128 AddEncoding gzip gz & lt; FilesMatch "\ .gz $" & gt;  ForceType text / plain Header set Content-Encoding: gzip & lt; / FilesMatch & gt;  & Lt; / Справочник & GT;   

Затем перезапустите Apache:

  sudo apache2ctl restart  
5
ответ дан 9 August 2018 в 07:55

Здесь есть как минимум два вопроса:

  1. чтение файлов .gz безболезненно
  2. разрешений в каталогах
  3. (необязательно для файлов tex )

Для # 1 существует множество приложений, которые будут легко справляться с файлами gzipped. Пара, которую вы можете использовать, - меньше и vim .

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

view является псевдонимом для vim -R , который просто говорит, чтобы открыть файл только для чтения.

В старые времена, прежде чем меньше было установлено в моей системе, я использовал бы gzcat и передал бы результат в другую утилиту. По-видимому, он теперь называется только zcat на Ubuntu, но вы бы использовали его так, например:

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

zcat по-прежнему доступен, и использование его для сжатия сжатого содержимого где-то может быть полезно в некоторых случаях. (Для ситуаций с файлами .bz2 доступно bzcat .)

Для # 2 все файлы, которые я видел в / usr / share / doc, находятся в каталогах с другими правами + rx, что означает, что все пользователи могут искать каталоги (например, содержимое списка) и читать файлы внутри. То, что вы не можете сделать (поскольку только root имеет разрешение на запись по умолчанию), заключается в создании файлов. Поскольку вы пытаетесь разархивировать в этот каталог, я предполагаю, что он разрешает вам разрешение, поскольку по умолчанию вы читали, но не писали разрешения.

Для # 3, я предполагаю, что вы используете .tex-файлы больше, чем я. Но вот один из способов справиться с ними без копирования на дом или временного файла. Для этого вы собираетесь создать именованный канал, но вы можете повторно использовать его для других ваших потребностей в технологиях tex и обработки. Он должен выглядеть следующим образом:

  • zcat или gzcat текст
  • ... и передать это на ваш процессор TeX
  • ... и отправить это для вашей Именованной трубы (здесь я назову его pipey )
  • ... а затем на отдельном экране возьмите свой вывод из pipey
  • ... и отправить это на процесс отображения dvi.

Вы можете, очевидно, изменить эти шаги, если используете разные или лучшие утилиты, чем те, которые есть здесь.

В моем примере будет использоваться утилита mkfifo для создания именованного канала, pipey . Целевым файлом для обработки является /usr/share/doc/gdb/refcard.tex.gz . Вам понадобятся две доступные командные строки оболочки (через терминал, Alt + F2 или, тем не менее,).

Вы наберете терминал один:

mkfifo pipey

Теперь у вас есть постоянный именованный канал. Вы можете использовать ls -l , чтобы заглянуть в него.

zcat /usr/share/doc/gdb/refcard.tex.gz | tex & gt; pipey

Обратите внимание, что эта команда не вернется, пока вы ничего не сделаете с выходом, который ушел в именованный канал.

Теперь, в конце второго, вы наберете: tex pipey | xdvi

И он работает (ну, вот так или иначе). Процесс может быть усовершенствован для более качественного вывода, но если вы ищете быстрый и относительно беспорядочный, это один из способов сделать это.

19
ответ дан 9 August 2018 в 07:55

Не следует читать файлы .tex! Он находится в удобном для чтения формате, но он предназначен для обработки перед чтением. Вы можете использовать инструмент tex2pdf, чтобы преобразовать его в .pdf.

-3
ответ дан 15 August 2018 в 03:10
  • 1
    1) I хочу прочитать источник LaTeX. 2) Команда pdflatex . 3) Это касательно вопроса, связанного с необходимостью уничтожить файл перед его чтением. – ændrük 31 January 2011 в 23:44

Возможно, слишком поздно, чтобы ответить, но я нашел лучшее решение (как простота использования, так и полноту)

Типичная система Linux имеет документацию во многих форматах (страницы руководства, информационные файлы, README и т. д.). dwww позволяет получить доступ ко всем этим через один и тот же интерфейс, WWW-браузер. Это облегчает использование документации.

dwww - это веб-интерфейс для всей онлайновой документации по системе Debian. Он создает некоторые веб-страницы, которые перечисляют все установленные документы и преобразует все документы в HTML. Преобразование выполняется, когда пользователь запрашивает документ.

  • Откройте браузер и укажите: http: // localhost / dwww /
  • Done!
  • [ ! d15]

    Все ваши info страницы, man страницы, / usr / share / doc файлы и описание пакета в одном месте! Ваш личный сайт документации!

13
ответ дан 15 August 2018 в 03:10
  • 1
    Используйте этот метод. Это меньше боли. И вы можете искать вещи очень быстро, так как у вас будет Google, как окно поиска. – Curious Apprentice 2 May 2012 в 11:17

gunzip file.gz пытается распаковать файл.gz в файл , удалив file.gz . Вот почему вы получаете ошибку «Разрешить отказ», вам не разрешено писать в / usr / share / doc . Чтобы получить содержимое файла, используйте gunzip -c file.gz или zcat file.gz .

Чтение gzip-сжатых текстовых файлов может быть выполнено с zless . Как показано в названиях, это просто меньше , но для gzip-сжатых файлов.

Пример использования:

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

Суффикс .gz также может быть опущен:

  zless / usr /  share / doc / bash / NEWS  
7
ответ дан 15 August 2018 в 03:10
  • 1
    В последних системах мне не нужно было указывать zless , так как less будет обрабатывать его автоматически. – belacqua 3 May 2012 в 20:45
  • 2
    @belacqua Правда, я делаю то же самое в наши дни. Я предполагаю, что это имеет какое-то отношение к переменным среды LESSOPEN и LESSCLOSE . – Lekensteyn 4 May 2012 в 01:38

Сначала установите apache2

  sudo apt-get install apache2 apache2-doc  

apache2-doc - это особый случай Вот. Он позволяет просматривать вашу документацию / usr / share / doc / через веб-браузер. http: // localhost / doc / .

Однако это не работает. Вам нужно изменить конфигурацию Apache, чтобы получить ее для распаковки и показать * .gz файлы в виде обычного текста.

Я отправил в Stack Overflow , чтобы получить способ использования Apache, чтобы показать содержимое * .gz документов в / usr / share / doc / . Это то, что было опубликовано как возможное решение.

Вот краткие инструкции. Он сообщает Apache, как обращаться с .gz-файлами, чтобы обрабатывать их как обычный текст и отправлять их в браузер в виде обычного текста.

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

Перейти к нижней части файла и найти раздел с Alias ​​/ doc / "/ usr / share / doc /" и измените его так, как показано на рисунке.

  Псевдоним / doc / "/ usr / share / doc /" & lt; Directory / usr / share / doc & gt;  Параметры Индексы MultiViews FollowSymLinks AllowOverride Нет Запрет заказа, разрешить Deny from all Разрешить от 127.0.0.0/255.0.0.0 :: 1/128 AddEncoding gzip gz & lt; FilesMatch "\ .gz $" & gt;  ForceType text / plain Header set Content-Encoding: gzip & lt; / FilesMatch & gt;  & Lt; / Справочник & GT;   

Затем перезапустите Apache:

  sudo apache2ctl restart  
5
ответ дан 15 August 2018 в 03:10
  • 1
    Я не уверен, что это другое решение. Я только что добавил AddEncoding x-gzip gz tgz AddType text / plain .gz в мою запись & lt; Directory & quot; / usr / share / doc / & gt; & gt; & gt; и я считаю, что декомпрессия фактически обрабатывается на стороне клиента. – Delete 22 March 2011 в 14:00
  • 2
    @Alain, нет, это не другое решение, это, по сути, то, что я делаю. – nelaaro 22 March 2011 в 14:18
  • 3
    Хотя я считаю, что это лучшее решение (ничто не может победить с помощью браузера для просмотра документов), его серьезный избыток для установки всего веб-сервера именно для этого. Я действительно хочу, чтобы Linux ( yelp может быть?) Имел any вне коробки способ чтения документов. – MestreLion 20 June 2011 в 01:12
  • 4
    Обновление: решение работает отлично !!! mod "deflate" был уже включен из коробки, и я изменил последнюю строку на sudo service apache2 restart ради стандартизации. И последнее, но не менее важное: чтение должно быть известно о завершении «/»: it должно быть localhost / doc / , localhost / doc не будет Работа. – MestreLion 20 June 2011 в 01:26

Здесь есть как минимум два вопроса:

  1. чтение файлов .gz безболезненно
  2. разрешений в каталогах
  3. (необязательно для файлов tex )

Для # 1 существует множество приложений, которые будут легко справляться с файлами gzipped. Пара, которую вы можете использовать, - меньше и vim .

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

view является псевдонимом для vim -R , который просто говорит, чтобы открыть файл только для чтения.

В старые времена, прежде чем меньше было установлено в моей системе, я использовал бы gzcat и передал бы результат в другую утилиту. По-видимому, он теперь называется только zcat на Ubuntu, но вы бы использовали его так, например:

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

zcat по-прежнему доступен, и использование его для сжатия сжатого содержимого где-то может быть полезно в некоторых случаях. (Для ситуаций с файлами .bz2 доступно bzcat .)

Для # 2 все файлы, которые я видел в / usr / share / doc, находятся в каталогах с другими правами + rx, что означает, что все пользователи могут искать каталоги (например, содержимое списка) и читать файлы внутри. То, что вы не можете сделать (поскольку только root имеет разрешение на запись по умолчанию), заключается в создании файлов. Поскольку вы пытаетесь разархивировать в этот каталог, я предполагаю, что он разрешает вам разрешение, поскольку по умолчанию вы читали, но не писали разрешения.

Для # 3, я предполагаю, что вы используете .tex-файлы больше, чем я. Но вот один из способов справиться с ними без копирования на дом или временного файла. Для этого вы собираетесь создать именованный канал, но вы можете повторно использовать его для других ваших потребностей в технологиях tex и обработки. Он должен выглядеть следующим образом:

  • zcat или gzcat текст
  • ... и передать это на ваш процессор TeX
  • ... и отправить это для вашей Именованной трубы (здесь я назову его pipey )
  • ... а затем на отдельном экране возьмите свой вывод из pipey
  • ... и отправить это на процесс отображения dvi.

Вы можете, очевидно, изменить эти шаги, если используете разные или лучшие утилиты, чем те, которые есть здесь.

В моем примере будет использоваться утилита mkfifo для создания именованного канала, pipey . Целевым файлом для обработки является /usr/share/doc/gdb/refcard.tex.gz . Вам понадобятся две доступные командные строки оболочки (через терминал, Alt + F2 или, тем не менее,).

Вы наберете терминал один:

mkfifo pipey

Теперь у вас есть постоянный именованный канал. Вы можете использовать ls -l , чтобы заглянуть в него.

zcat /usr/share/doc/gdb/refcard.tex.gz | tex & gt; pipey

Обратите внимание, что эта команда не вернется, пока вы ничего не сделаете с выходом, который ушел в именованный канал.

Теперь, в конце второго, вы наберете: tex pipey | xdvi

И он работает (ну, вот так или иначе). Процесс может быть усовершенствован для более качественного вывода, но если вы ищете быстрый и относительно беспорядочный, это один из способов сделать это.

19
ответ дан 15 August 2018 в 03:10
  • 1
    Проверьте мое решение, я думаю, вы будете впечатлены. [D0] askubuntu.com/questions/24072/&hellip – nelaaro 11 March 2011 в 15:32
  • 2
    +1 для деталей. Что касается меня, как упоминалось также @nelaar, я просто добавляю несколько директив в объявление каталога Apache & lt; Directory & quot; / usr / share / doc / & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; gt; ] / etc / apache2 / sites-enabled / 000-default ), и я считаю, что декомпрессии обрабатываются самими браузерами. ( AddEncoding x-gzip gz tgz и AddType text / plain .gz ). – Delete 22 March 2011 в 14:07
  • 3
    Хотя это был удивительный и подробный урок многих полезных команд, вряд ли это хорошее решение для того, как ожидается, что типичный пользователь прочитает системную документацию. Для Ubuntu Gilome's yelp или Debian dwww является самым безболезненным, легким методом. Мой ответ описывает последнее: askubuntu.com/a/52419/11015 – MestreLion 3 May 2012 в 02:41
  • 4
    @MestreLion «Обычный пользователь» в самом реалистичном смысле не знает, что файлы даже там. Я думаю, что самым простым решением является тот, который я упомянул первым - используя less . Это имеет дополнительное преимущество при установке по умолчанию в каждой современной системе * nix. Для пользователя, который знает, что есть файлы, и хочет ссылаться на них более двух раз в год, установка чего-то типа dwww звучит как отличное решение. Сам я, в крайнем случае, я, возможно, не помню dwww, но я буду помнить основные команды вроде «меньше». Или, как сказал Таккат, Nautilus / fileroller / etc. – belacqua 3 May 2012 в 20:47

Другие вопросы по тегам:

Похожие вопросы: