So ändern Sie den Wert von ~

So ändern Sie den Wert von ~

standardmäßig ~wird der Wert gegeben von/home/username/

Wenn ich den Befehl verwende, cd ~geht es in das Verzeichnis/home/username/

Wie ändere ich den Wert in eine andere Datei wie etwa /home/Benutzername/Dateiname?

Ich weiß, dass das gefährlich sein kann, aber ich arbeite an einem CTF, also ist es in Ordnung.

Antwort1

Die Tilde (~) wird von Ihrer Shell als Kurzform von interpretiert $HOME.

Versuchen Sie die folgenden Befehle:

echo ~
HOME=foo
echo ~

Dies sollte zuerst Ihr tatsächliches Home-Verzeichnis und anschließend „foo“ ausgeben, da Sie $HOME darauf gesetzt haben.

Der Standardwert $HOMEstammt aus Ihrer Systemkonfiguration. Verwenden Sie diesen Wert getent passwd, um alle bekannten Benutzer und ihre Home-Verzeichnisse aufzulisten. Abhängig von Ihrer Systemkonfiguration können diese Einträge von /etc/passwdeinem beliebigen Remote-Verzeichnisdienst stammen.

Wenn Sie Ihr Home-Verzeichnis nur vorübergehend neu definieren möchten, legen Sie einfach ein anderes fest $HOME.

Wenn Sie es dauerhaft ändern möchten, müssen Sie den Passworteintrag ändern, zB durch manuelles Bearbeiten /etc/passwd.

Entnommen aus dieser U&L-Frage.

Antwort2

Versuchen Sie, die Variable zu ändern $HOME, da Tilde ( ~) eine Kurzform von ist $HOME, oder ändern Sie das Home-Verzeichnis Ihres Benutzers in, /etc/passwdaber das wird nicht empfohlen.

Warum versuchst du nicht,aliasfür cd /home/username/filenameso was:

alias documents='cd ~/Documents'

Wenn Sie jetzt tippen, documentsändert es sich zu/home/user/Documents

Mehr Infos unterman alias.

Um diesen Alias ​​dauerhaft zu machen,Überprüfen Sie diese Frage.

verwandte Informationen