Anfängerproblem: Alias
Anfängerproblem: Alias
Hallo,
ich versuche gerade einem YT Video zu folgen und gemäß den Vorgaben ein alias zu erschaffen.
Leider bekomme ich immer die Ausgabe: Komando nicht gefunden.
Mein Vorgehen bisher:
nano .bashrc
Kontrolle, ob in dieser Datei die notwendige Anweisung von der Auskommentierung befreit ist.
erschaffen einer .txt Datei: bash_aliases
da schreibe ich nun (gemäß Videovorgabe) hinein:
alias up='sudo apt update && sudo apt upgrade'
alias sudo='sudo'
Nach einem reboot bekomme ich bei Eingabe von "up" : Kommando nicht gefunden.
Hat jemand eine Idee wass ich falsch mache?
Fragt gerne, wenn ihr mehr Infos zu meinem Versuch braucht
Grüße und vielen Dank im voraus
ich versuche gerade einem YT Video zu folgen und gemäß den Vorgaben ein alias zu erschaffen.
Leider bekomme ich immer die Ausgabe: Komando nicht gefunden.
Mein Vorgehen bisher:
nano .bashrc
Kontrolle, ob in dieser Datei die notwendige Anweisung von der Auskommentierung befreit ist.
erschaffen einer .txt Datei: bash_aliases
da schreibe ich nun (gemäß Videovorgabe) hinein:
alias up='sudo apt update && sudo apt upgrade'
alias sudo='sudo'
Nach einem reboot bekomme ich bei Eingabe von "up" : Kommando nicht gefunden.
Hat jemand eine Idee wass ich falsch mache?
Fragt gerne, wenn ihr mehr Infos zu meinem Versuch braucht
Grüße und vielen Dank im voraus
- whisper
- Beiträge: 3382
- Registriert: 23.09.2002 14:32:21
- Lizenz eigener Beiträge: GNU Free Documentation License
-
Kontaktdaten:
Re: Anfängerproblem: Alias
Die Datei heisst vermutlich .bash_aliases
Es geht wohl hier drum
Dann kannst du mit source .bashrc die Änderungen übernehmen und brauchst natürlich NICHT neu starten
also im Home Verzeichnis eintippen:
Dadurch wird die .basrc erneut gelesen und damit auch deine aliase
Es geht wohl hier drum
Code: Alles auswählen
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
also im Home Verzeichnis eintippen:
Code: Alles auswählen
source .bashrc
Alter ist übrigens keine Ausrede, nur Erfahrung, die sich stapelt.
Re: Anfängerproblem: Alias
Zum Anzeigen aller definierten Aliase kann man auf der Kommandozeile auch einfach
eingeben. Nach dem von whisper vorgeschlagenen
kann man kontrollieren, ob die definierten Aliase erfolgreich importiert wurden.
Und ja, die Datei muß .bash_aliases ([Punkt]bash_aliases) heißen.
Code: Alles auswählen
alias
Code: Alles auswählen
source .bashrc
Und ja, die Datei muß .bash_aliases ([Punkt]bash_aliases) heißen.
Re: Anfängerproblem: Alias
Danke für deine schnelle Antwort,
Du hast Recht, die Datei heist natürlich .bash_aliases
und es geht um
Leider funktioniert das ganze immer noch nicht.
ich habe darauf geachtet, dass sowohl
.bashrc
als auch
.bash_aliases
im selben home-Ordner sind.
habe mit "nano .bash_aliases"
alias up='sudo apt update && sudo apt upgrade'
alias sudo='sudo'
eingefügt
leider funktioniert das ganze auch nach:
source .bashrc
nicht.
Die Fehlermeldung: "Kommando nicht gefunden" bleibt besteht
Inzwischen habe ich den Hinweis gefunden, man soll
am Ende von .bashrc anfügen. Leider hat auch das keine Auswirkung
Du hast Recht, die Datei heist natürlich .bash_aliases
und es geht um
Code: Alles auswählen
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
ich habe darauf geachtet, dass sowohl
.bashrc
als auch
.bash_aliases
im selben home-Ordner sind.
habe mit "nano .bash_aliases"
alias up='sudo apt update && sudo apt upgrade'
alias sudo='sudo'
eingefügt
leider funktioniert das ganze auch nach:
source .bashrc
nicht.
Die Fehlermeldung: "Kommando nicht gefunden" bleibt besteht
Inzwischen habe ich den Hinweis gefunden, man soll
Code: Alles auswählen
if [ -f $HOME/.bash_aliases ]
then
. $HOME/.bash_aliases
fi
Re: Anfängerproblem: Alias
In welchem Ordner sind die Dateien denn?
Was ist die Ausgabe von:
Was wird ausgegeben wenn du diese Befehle eingibst:
Kopiere und die ganze Shellsession mit den Befehlen und ihren Ausgaben hier rein.
Was ist die Ausgabe von:
Code: Alles auswählen
cat ~/.bash_aliases
Code: Alles auswählen
source ~/.bash_aliases
alias
Use ed once in a while!
Re: Anfängerproblem: Alias
Update:
ich habe den alias-Befehlstext nun einmal im .bashrc eingesetzt
so wird er dann auch ausgeführt.
Der Fehler scheint also entweder in der Verlinkung von .bashrc auf .bash_aliases zu liegen,
oder ich pfusche schon bei der Erschaffung der .bash_aliases datei.
Die mache ich einfach via touch .bash_aliases (mit nano .bash_aliases habe ich es auch schon versucht.
ich habe den alias-Befehlstext nun einmal im .bashrc eingesetzt
so wird er dann auch ausgeführt.
Der Fehler scheint also entweder in der Verlinkung von .bashrc auf .bash_aliases zu liegen,
oder ich pfusche schon bei der Erschaffung der .bash_aliases datei.
Die mache ich einfach via touch .bash_aliases (mit nano .bash_aliases habe ich es auch schon versucht.
Re: Anfängerproblem: Alias
Solche Aliase, die keinen Bezug zur Shell haben, sollten auch nicht shellbezogen geladen werden, sondern in sowas wie z.B. ~/.profile. Deswegen - benutzt du denn überhaupt die Bash?
Kannst du mal das Video verlinken? Würde mich mal interessieren, was der Autor zu diesem sudo=sudo meint.
Kannst du mal das Video verlinken? Würde mich mal interessieren, was der Autor zu diesem sudo=sudo meint.
Re: Anfängerproblem: Alias
Das find ich auch etwas merkwürdigtobo hat geschrieben:03.08.2022 10:38:34Würde mich mal interessieren, was der Autor zu diesem sudo=sudo meint.
Manchmal bekannt als Just (another) Terminal Hacker.
Re: Anfängerproblem: Alias
Die Bash überprüft nur das erste Wort eines Befehls auf einen Alias, alle Wörter danach werden nicht überprüft, heißt bei einem Befehl wie "sudo irgendwas" wird nur das erste Wort (sudo) per bash auf einen Alias geprüft, "irgendwas" wird nicht auf einen Alias geprüft. wenn wie im obigen Beispiel sudo='sudo ' (mit Leertaste hinter "sudo") in der .bashrc steht und man gibt "sudo irgendwas" ein dann wird "irgendwas" jetzt doch auf einen Alias geprüft....
Re: Anfängerproblem: Alias
Interessant! Wieder was gelernt.buddy67 hat geschrieben:03.08.2022 11:03:00Die Bash überprüft nur das erste Wort eines Befehls auf einen Alias, alle Wörter danach werden nicht überprüft, heißt bei einem Befehl wie "sudo irgendwas" wird nur das erste Wort (sudo) per bash auf einen Alias geprüft, "irgendwas" wird nicht auf einen Alias geprüft. wenn wie im obigen Beispiel sudo='sudo ' (mit Leertaste hinter "sudo") in der .bashrc steht und man gibt "sudo irgendwas" ein dann wird "irgendwas" jetzt doch auf einen Alias geprüft....
Use ed once in a while!
Re: Anfängerproblem: Alias
Dito
Das heißt man könnte, um deutlicher zu machen, dass sudo/root-Rechte involviert sind, den ersten Alias hier zu
Code: Alles auswählen
alias up='apt update && apt upgrade'
Code: Alles auswählen
~$ sudo up
Manchmal bekannt als Just (another) Terminal Hacker.
Re: Anfängerproblem: Alias
Sollte dadurch dann nicht ein
ausgeführt werden?
Code: Alles auswählen
sudo apt update && apt upgrade
Re: Anfängerproblem: Alias
Ob der Link zum YT Video noch mal kommt
cu KH
cu KH
Re: Anfängerproblem: Alias
Jo, hast recht. Ich sollte mich vielleicht lieber an den Nachsatz in der Manpage haltentobo hat geschrieben:03.08.2022 12:15:21Sollte dadurch dann nicht einausgeführt werden?Code: Alles auswählen
sudo apt update && apt upgrade
man bash hat geschrieben:For almost every purpose, aliases are superseded by shell functions.
Um das zu erreichen, was ich meinte, müsst mans wohl noch extra verpacken:
Code: Alles auswählen
alias up='sh -c "apt update && apt upgrade"'
Manchmal bekannt als Just (another) Terminal Hacker.
Re: Anfängerproblem: Alias
Lieber Anfänger,
ich fühle mich nach mehr als 15 Jahren Linux immer noch als Anfänger, wenn auch als fortgeschrittener Anfänger. In soweit magst du meinen Ratschlag in der Pfeife rauchen, aber dennoch hier ist er:
So lange du Anfänger bist (und es gibt durchaus ernst zunehmende Fachleute, die das immer noch so handhaben wollen) lass den ganzen sudo Kram. Es steigert durchaus die Übersicht und dadurch die Sicherheit, wenn du strikt trennst zwischen normalem Nutzerverhalten und systemrelevanten Arbeiten als root.
Und wenn du schon mit Aliasen arbeiten willst, kreiere doch erstmal *für root* einen funktionierenden Alias (das ist schon praktisch genug) bevor du dir mittels der in ein Alias verwursteten sudo Komplexität mit einem Schuß durch beide Füsse schießt ...
my 2 cts
ich fühle mich nach mehr als 15 Jahren Linux immer noch als Anfänger, wenn auch als fortgeschrittener Anfänger. In soweit magst du meinen Ratschlag in der Pfeife rauchen, aber dennoch hier ist er:
So lange du Anfänger bist (und es gibt durchaus ernst zunehmende Fachleute, die das immer noch so handhaben wollen) lass den ganzen sudo Kram. Es steigert durchaus die Übersicht und dadurch die Sicherheit, wenn du strikt trennst zwischen normalem Nutzerverhalten und systemrelevanten Arbeiten als root.
Und wenn du schon mit Aliasen arbeiten willst, kreiere doch erstmal *für root* einen funktionierenden Alias (das ist schon praktisch genug) bevor du dir mittels der in ein Alias verwursteten sudo Komplexität mit einem Schuß durch beide Füsse schießt ...
my 2 cts
gruß
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
michaa7
-------------------------------
Menschen ändern gelegentlich ihre Ansichten, aber nur selten ihre Motive. (Oskar Negt)
Re: Anfängerproblem: Alias
Hallo euch allen,
vielen Dank für euren Beistand.
Also hier der Link zum Video https://www.youtube.com/watch?v=0jZawRTgWB4
Dabei wird erklärt, dass
alias sudo='sudo'
notwendig ist, damit sudo im vorherigen alias akzeptiert wird.
Und jetzt das wirklich verwunderliche:
Ich habe in meiner Verzweiflung die Datei .bash_aliases gelöscht und komplett neu erschaffen.
Dazu habe ich cat > .bash_aliases.txt genutzt.
alias Befehle, wie beschrieben, eingefügt,
die Bezeichnung geändert auf .bash_aliases
und
source .bashrc
UND: es funktioniert.
Danke euch für eure Hilfe, das hat mich echt beschäftigt.
vielen Dank für euren Beistand.
Also hier der Link zum Video https://www.youtube.com/watch?v=0jZawRTgWB4
Dabei wird erklärt, dass
alias sudo='sudo'
notwendig ist, damit sudo im vorherigen alias akzeptiert wird.
Und jetzt das wirklich verwunderliche:
Ich habe in meiner Verzweiflung die Datei .bash_aliases gelöscht und komplett neu erschaffen.
Dazu habe ich cat > .bash_aliases.txt genutzt.
alias Befehle, wie beschrieben, eingefügt,
die Bezeichnung geändert auf .bash_aliases
und
source .bashrc
UND: es funktioniert.
Danke euch für eure Hilfe, das hat mich echt beschäftigt.
Re: Anfängerproblem: Alias
Bei 07:00 beginnt das Alias-Zeug.Milo83 hat geschrieben:03.08.2022 21:37:01Also hier der Link zum Video https://www.youtube.com/watch?v=0jZawRTgWB4
Wirklich erklaeren tut er das ja nicht, er behauptet es nur. Die Behauptung, dass das notwendig waere, ist falsch. Es funktioniert auch ohne diesen zweiten Alias.Milo83 hat geschrieben:03.08.2022 21:37:01Dabei wird erklärt, dass
alias sudo='sudo'
notwendig ist, damit sudo im vorherigen alias akzeptiert wird.
Use ed once in a while!
Re: Anfängerproblem: Alias
Ja, so wie dieser Alias hier benutzt wird, ist er unnötig, aber würde man ihn brauchen, dann wäre er falsch. Der Sachverhalt ist genau so, wie buddy67 es beschrieben hat:
Code: Alles auswählen
$ echo "sudo aupd && sudo aupg" >t.sh
$ alias aupd="apt update"
$ alias aupg="apt upgrade"
$ . ./t.sh
[sudo] password for root:
sudo: aupd: command not found
$ alias sudo=sudo
$ . ./t.sh
[sudo] password for root:
sudo: aupd: command not found
$ alias sudo="sudo "
$ . ./t.sh
[sudo] password for root:
Hit:1 https://...
Hit:2 https://...
Hit:3 https://...
Hit:4 https://...
Hit:5 https://,,,
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
[sudo] password for root:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
$
Re: Anfängerproblem: Alias
Vielen Dank für all eure Mühen.
Das hat mir schonmal weiter geholfen
Das hat mir schonmal weiter geholfen