Estoy usando Ubuntu 16.04.
Paso 1) Ingresé a mi root
cuenta de usuario.
Paso 2) Solía cd
navegar al directorio de inicio de una cuenta de usuario diferente.
Paso 3) Escribí ls
para examinar el contenido de ese directorio.
Paso 4) El contenido volvió como vacío.
Paso 5) Escribí mkdir .ssh
para crear un directorio.
Resultado) mkdir: cannot create directory '.ssh': File exists
Pregunta: ¿Por qué el directorio aparece vacío si existe una carpeta .ssh dentro de él?
- actualización -
Me conecté a root porque este es un servidor de prueba. Lo estoy creando y destruyendo repetidamente.
ll
ola
nols
Respuestas:
ls
por sí solo no muestra directorios ocultos (los directorios y archivos ocultos son los que comienzan con un.
, como.ssh
)Intenta usar
ls -a
en el directorio.Desde la página de manual de ls:
Como se señaló en los comentarios, los directorios y archivos "ocultos" no son técnicamente una cosa, solo hay código integrado en muchas herramientas comunes que se tratan
.
y..
con un significado especial, el resultado es que la.
mayoría de las herramientas suelen considerarlo "oculto". La razón por la que usé este término es porque es común escucharlo referido de esa manera.Además
.
y..
generalmente tienen un significado especial para la mayoría de los sistemas de archivos, indicando el directorio actual y el directorio padre, respectivamente.fuente
ls
y muchas otras herramientas. Pero en principio tienes toda la razón; Por otra parte, incluso en sistemas que rastrean su linaje hasta MS-DOS y sus atributos de archivo, requiere un código especial para manejar el caso de archivos "ocultos" (que significa "archivos con el conjunto de atributos ocultos" en lugar de "archivos que han nombrado en este formulario en particular ").ls
solo se suponía que se escondía.
y..
, por lo tanto, agregaron código para ver si comenzaba con un puntoroot
" combinada con la aparente falta de familiaridad con * nixes. Sería muy fácil para OP destruir accidentalmente algo importante.En su paso 3, escriba
ls -a
para enumerar el contenido del directorio.El archivo o directorio cuyo nombre comience
.
será ignorado porls
.fuente
.ssh es un directorio oculto, ya que comienza con un
.
Para enumerar archivos y directorios ocultos, use en
ls -a
lugar de solols
.fuente
.ssh
no es un archivo, es un directorio"." está reservado para carpetas / archivos ocultos.
ls
de manera predeterminada no enumerará los archivos y directorios ocultos. ("." y ".." son dos directorios ocultos predeterminados en cualquier directorio). Para ver todos los archivos dentro de una carpeta, usels -a
ols -al
(si desea más detalles sobre cada archivo / carpeta.fuente
Para crear el directorio, debe eliminar el directorio existente
Use rm -rf .ssh, eliminará el directorio
O si ya existe Puede usar cd .ssh
fuente