Ist less
es für einfache Befehle wie besser, einen Alias zu erstellen oder die Optionen zu exportieren? Gibt es einen Vorteil gegenüber dem anderen?
Wenn ich less
zum Beispiel immer die -R
Option zum Anzeigen von unformatierten Zeichen verwenden möchte , funktionieren beide Lösungen:
export LESS='-R'
alias less='less -R'
Gibt es für einen einfachen Fall wie diesen einen Vorteil gegenüber dem anderen? Gibt es Szenarien, in denen eines Probleme verursacht und das andere nicht?
Ich habe durch einige lesen info
und man
Seiten sowie googeln, aber ich bin auf diese immer noch fest.
less
Sie können es mitlesskey
)Antworten:
Ein Unterschied zwischen den beiden besteht darin, dass Aliase nur ein Shell-Feature sind. Umgebungsvariablen werden von allen Unterprozessen geerbt (sofern nicht absichtlich gelöscht).
Die Umgebungsvariable wäre eher zu arbeiten , auch wenn
less
indirekt gestartet wird, wie über eine andere Shell (zBtcsh
),man
,vim
,psql
, usw.quelle
bash -c 'alias ll="ls -l"; ll'
Der Alias wird nicht verwendet.export LESS='-R'
in meinem .zshrc eine zsh-Sitzung öffne und dann in derselben Sitzung zu bash wechsle (ohne Export in .bashrc), wird die Umgebungsvariable trotzdem gesetzt? Ich hätte gedacht, beide wären verloren ...Dies hängt stark vom verwendeten Tool ab. Es wird Tools geben, mit denen Sie eines von beiden verwenden können, andere, die nur eines zulassen.
Es gibt Befehle, die von anderen aufgerufen werden und die Umgebungsvariablen lesen und dieselben Schalter akzeptieren, aber das Hinzufügen derselben Schalter zu jedem einzelnen ist mühsam, so wie Compiler, da
make
hier Umgebungsvariablen leuchten. Sie setzen die Variable und vergessen sie. Es ist auch ein Vorteil, dass es zeitlich begrenzt sein und für einen einzelnen Befehl funktionieren kann.Unterm Strich ist es eine Frage der Präferenzen und der besten Vorgehensweise für die Aufgabe. Manchmal ist das Einrichten eines Alias einfacher und dauerhafter als bei einer Umgebungsvariablen, und manchmal benötigen Sie eine Reihe von Tools, die sich genauso verhalten, wie Sie es würden Umgebungsvariablen lieben.
quelle