Tengo una carpeta llamada ~kernel-ppadentro ~/Downloads.
aditya@aditya-desktop:~$ cd Downloads/
aditya@aditya-desktop:~/Downloads$ ls
~kernel-ppa
Ahora, cuando escribo cd ~ky presiono Tabpara la expansión automática, el shell lo expande en cd ~kernoops/lugar de cd ~kernel-ppa/aunque la carpeta con los mismos caracteres iniciales ya está presente.
Para que funcione la expansión automática, necesito escapar con ella \. Por lo tanto, usar cd \~ky presionar Tabcorrectamente lo expande a cd \~kernel-ppa/. Incluso usar cd \y presionar Tabhace el truco.
¿Por qué es así y por qué necesito escapar? Además, ¿de qué estoy escapando ya que incluso ~no es necesario para la expansión automática?
Si voy con el flujo y corro cd ~kernoops/y presiono Enter, el estado del terminal cambia a //:
aditya@aditya-desktop:~/Downloads$ cd ~kernoops/
aditya@aditya-desktop://$ pwd
//
aditya@aditya-desktop://$ ls
bin cdrom etc initrd.img lost+found mnt proc run srv tmp var
boot dev home lib media opt root sbin sys usr vmlinuz
aditya@aditya-desktop://$
Esto se parece al /directorio, pero pwddice que lo es //. ¿Qué es exactamente?
treeo con lsy notará que es la primera subcarpeta.
~kernel-ppaes la única carpeta dentro de ella; si solo ejecuto cd y presiono tab, se expande a cd \~kernel-ppa/. ¡No necesito escapar también!