Тут принаймні два питання:
- читання файлів .gz безболісно
- дозволи на каталоги
- (необов’язково для текстових файлів)
Для №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
доступно.)
Для №2 усі файли, які я бачив під / usr / share / doc, знаходяться в каталогах з іншими правами + rx, тобто всі користувачі можуть шукати в каталогах (наприклад, вміст списку) та читати файли всередині. Те, що ви не можете зробити (оскільки лише root має дозвіл на запис на запис), це створити файли. Оскільки ви намагаєтесь скасувати розпакування в цей каталог, я думаю, що він дає вам дозвіл відмовлено, оскільки ви читали, але не дозволяли писати дозволи за замовчуванням.
Я вважаю, що ви користуєтесь .tex файлами більше, ніж я. Але ось один із способів поводження з ними без копіювання додому чи тимчасового файлу. Для цього ви збираєтеся створити названу трубу, але ви можете використовувати її повторно для своїх інших текстових трубопроводів та потреб обробки. Це має вийти так:
- zcat або gzcat тексту
- ... і передайте це своєму процесору TeX
- ... і надішліть це на вашу названу трубу (тут я зателефоную йому
pipey
)
- ... а потім на окремому екрані візьміть свій висновок з трубопроводу
- ... і надішліть його до процесу відображення дви.
Ви, очевидно, можете змінити ці кроки, якщо використовуєте інші або кращі утиліти, ніж ті, що тут.
Мій приклад буде використовувати 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
І це працює (ну, так чи інакше). Процес можна вдосконалити для кращого виходу, але якщо ви шукаєте швидкого та відносно безладного, це один із способів.