Cómo cambiar el valor de ~

Cómo cambiar el valor de ~

por defecto ~se le da el valor de/home/username/

es decir, si uso el comando, cd ~va al directorio/home/username/

¿Cómo cambiar su valor a algún otro archivo como /home/nombre de usuario/nombre de archivo?

Sé que esto puede ser peligroso, aunque estoy trabajando en un CTF, así que está bien.

Respuesta1

Su shell interpreta la tilde (~) como una forma abreviada de $HOME.

Pruebe los siguientes comandos:

echo ~
HOME=foo
echo ~

Esto debería imprimir primero su directorio de inicio real y luego "foo", ya que configuró $HOME` para eso.

El valor predeterminado de $HOMEproviene de la configuración de su sistema. Utilícelo getent passwdpara enumerar todos los usuarios conocidos y sus directorios personales. Dependiendo de la configuración de su sistema, esas entradas pueden provenir de /etc/passwdcualquier servicio de directorio remoto.

Si solo desea redefinir temporalmente su directorio de inicio, simplemente configure otro archivo $HOME.

Si desea cambiarlo permanentemente, debe cambiar la entrada de contraseña, por ejemplo, editándola manualmente /etc/passwd.

Tomado de esta pregunta de U&L.

Respuesta2

Intente cambiar la $HOMEvariable, porque tilde ( ~) es una forma abreviada de $HOME, o cambie el directorio de inicio de su usuario, /etc/passwdpero eso no se recomienda.

¿Por qué no intentas hacer yaliaspor cd /home/username/filenameasí:

alias documents='cd ~/Documents'

Ahora, cuando escribas, documentscambiará a/home/user/Documents

Más información enman alias.

Para que ese alias sea permanente,revisa esta pregunta.

información relacionada