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
$HOME
proviene de la configuración de su sistema. Utilícelogetent passwd
para enumerar todos los usuarios conocidos y sus directorios personales. Dependiendo de la configuración de su sistema, esas entradas pueden provenir de/etc/passwd
cualquier 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
.
Respuesta2
Intente cambiar la $HOME
variable, porque tilde ( ~
) es una forma abreviada de $HOME
, o cambie el directorio de inicio de su usuario, /etc/passwd
pero eso no se recomienda.
¿Por qué no intentas hacer yaliaspor cd /home/username/filename
así:
alias documents='cd ~/Documents'
Ahora, cuando escribas, documents
cambiará a/home/user/Documents
Más información enman alias
.
Para que ese alias sea permanente,revisa esta pregunta.