Há pelo menos dois problemas aqui:
- lendo os arquivos .gz sem dor
- permissões nos diretórios
- (opcional para arquivos tex)
Para o número 1 , existem vários aplicativos que lidam perfeitamente com os arquivos compactados em gzip. Um casal que você poderia usar é less
e vim
.
less README.gz
vim -R README.Debian.gz
view Important.bits.gz
view
é um apelido para vim -R
, que apenas diz para abrir o arquivo somente leitura.
Antigamente, antes de instalar menos no meu sistema, eu usava gzcat
e canalizava a saída para outro utilitário. Aparentemente, ele só é chamado zcat
agora no Ubuntu, mas você o usaria assim, por exemplo:
/usr/share/doc/xpdf$ zcat changelog.Debian.gz | more
O zcat ainda está disponível, e usá-lo para canalizar o conteúdo compactado em algum lugar pode ser útil em alguns casos. (Para situações com arquivos .bz2, bzcat
está disponível.)
Na segunda posição , todos os arquivos que eu vi em / usr / share / doc estão em diretórios com outras permissões + rx, o que significa que todos os usuários podem pesquisar os diretórios (por exemplo, listar o conteúdo) e ler os arquivos. O que você não pode fazer (já que apenas o root possui permissão de gravação por padrão) é criar arquivos. Como você está tentando descompactar esse diretório, imagino que ele esteja lhe dando permissão negada porque você leu, mas não tem permissão de gravação por padrão.
Para o número 3, acho que você usa arquivos .tex mais do que eu. Mas aqui está uma maneira de lidar com eles sem copiar para casa ou para um arquivo temporário. Para isso, você criará um pipe nomeado, mas poderá reutilizá-lo para outras necessidades de processamento e tubulação tex. Deve ser assim:
- zcat ou gzcat o texto
- ... e canalize isso para o seu processador TeX
- ... e envie isso para o Named Pipe (aqui, eu vou chamá-lo
pipey
)
- ... e, em uma tela separada, pegue sua saída do pipey
- ... e envie para um processo de exibição em dvi.
Obviamente, você pode alterar essas etapas se usar utilitários diferentes ou melhores que os aqui.
Meu exemplo usará o mkfifo
utilitário para criar o pipe nomeado pipey
,. O arquivo de destino a ser processado é /usr/share/doc/gdb/refcard.tex.gz
. Você precisará de duas linhas de comando do shell disponíveis (via terminal, Alt + F2 ou, no entanto).
Você digitará o terminal um:
mkfifo pipey
Agora você tem um pipe nomeado persistente. Você pode usar ls -l
para espiar.
zcat /usr/share/doc/gdb/refcard.tex.gz | tex > pipey
Observe que esse comando não retornará até que você faça algo com a saída que foi para o pipe nomeado.
Agora, no terminal dois, você digitará: tex pipey | xdvi
E funciona (bem, aqui de qualquer maneira). O processo pode ser refinado para obter resultados mais bonitos, mas se você estiver procurando por produtos rápidos e relativamente sem bagunça, essa é uma maneira de fazê-lo.