Il y a au moins deux problèmes ici:
- lire les fichiers .gz sans douleur
- autorisations sur les répertoires
- (optionnel pour les fichiers tex)
Pour le n ° 1 , il existe un certain nombre d'applications qui gèrent les fichiers compressés de manière transparente. Un couple que vous pourriez utiliser sont less
et vim
.
less README.gz
vim -R README.Debian.gz
view Important.bits.gz
view
est un alias pour vim -R
, qui dit simplement d'ouvrir le fichier en lecture seule.
Auparavant, avant d'installer moins de logiciels sur mon système, j'utilisais gzcat
et dirigais la sortie vers un autre utilitaire. Apparemment, il n'est appelé que zcat
maintenant sur Ubuntu, mais vous l'utiliseriez comme ceci, par exemple:
/usr/share/doc/xpdf$ zcat changelog.Debian.gz | more
zcat est toujours disponible et son utilisation pour diriger des contenus compressés quelque part peut être utile dans certains cas. (Pour les situations avec des fichiers .bz2, bzcat
est disponible.)
Pour # 2 , tous les fichiers que j'ai vus sous / usr / share / doc se trouvent dans des répertoires avec d'autres autorisations + rx, ce qui signifie que tous les utilisateurs peuvent effectuer une recherche dans les répertoires (par exemple, le contenu de la liste) et y lire des fichiers. Ce que vous ne pouvez pas faire (car seul root a l'autorisation d'écriture par défaut), c'est créer des fichiers. Étant donné que vous essayez de décompresser dans ce répertoire, j'imagine qu'il vous donne l'autorisation refusée car vous avez lu, mais pas écrit, les autorisations par défaut.
Pour # 3, je suppose que vous utilisez plus que moi les fichiers .tex. Mais voici une façon de les gérer sans copier à la maison ou dans un fichier temporaire. Pour cela, vous allez créer un canal nommé, mais vous pouvez le réutiliser pour vos autres besoins en traitement et en traitement de texte. Cela devrait aller comme ceci:
- zcat ou gzcat le texte
- ... et dirigez-le vers votre processeur TeX
- ... et envoyez ça à votre pipe nommée (ici, je l'appellerai
pipey
)
- ... puis dans un écran séparé, saisissez votre sortie de pipey
- ... et l'envoyer à un processus d'affichage dvi.
Vous pouvez évidemment modifier ces étapes si vous utilisez des utilitaires différents ou meilleurs que ceux décrits ici.
Mon exemple utilisera cet mkfifo
utilitaire pour créer le canal nommé pipey
. Le fichier cible à traiter est /usr/share/doc/gdb/refcard.tex.gz
. Vous aurez besoin de deux lignes de commande shell disponibles (via terminal, Alt + F2, ou cependant).
Vous allez taper au terminal un:
mkfifo pipey
Vous avez maintenant un canal nommé persistant. Vous pouvez utiliser ls -l
pour jeter un coup d'oeil.
zcat /usr/share/doc/gdb/refcard.tex.gz | tex > pipey
Notez que cette commande ne renverra pas tant que vous ne ferez pas quelque chose avec la sortie qui est passée dans le canal nommé.
Maintenant, au terminal deux, vous allez taper: tex pipey | xdvi
Et ça marche (enfin, ici quand même). Le processus peut être affiné pour obtenir une sortie plus jolie, mais si vous recherchez une solution rapide et relativement sans dégâts, c’est une façon de le faire.