J'ai mis en place un alias ce matin pour aider à trouver le dernier fichier journal dans un répertoire. Mon alias ressemble à
alias latest="ls -lat | grep ^- | awk '{print \$8}' | head -1"
Dans mes recherches jusqu'à présent ce matin, j'ai lu un blog - ParsingLS ce qui me dit que ce n'est probablement pas la meilleure façon de faire - ignorons cela pour le moment, je peux chercher à faire un meilleur alias en utilisant find
plus tard. Pour l'instant, supposons que j'ai une commande qui fonctionne parfaitement et qui doit sortir un nom de fichier du répertoire courant.
Je pensais que j'allais pouvoir faire latest | vi
pour ouvrir le dernier fichier modifié dans le répertoire, mais il semble que cela ne fonctionne pas - vi se plaint que la sortie n'est pas un terminal. J'ai vu une question sur stackoverflow qui suggérait que le problème était lié aux sous-shells et au piping.
latest | vi < `tty` > `tty`
Mais ça ne fait que m'énerver
`tty`:ambiguous redirect
Je suis sûr qu'il y a quelque chose de fondamental que je ne comprends pas dans les tuyaux - je n'ai commencé que récemment à essayer de les utiliser sérieusement, des idées ?