8 votes

La commande ls n'affiche pas le dossier mais je ne peux pas le créer car il existe déjà.

J'utilise Ubuntu 16.04.

Étape 1) Je me suis connecté à mon root compte d'utilisateur.

Étape 2) J'ai utilisé cd pour naviguer vers le répertoire d'origine d'un autre compte d'utilisateur.

Étape 3) J'ai tapé ls pour examiner le contenu de ce répertoire.

Étape 4) Le contenu est revenu vide.

Étape 5) J'ai tapé mkdir .ssh pour créer un répertoire.

Résultat) mkdir: cannot create directory '.ssh': File exists

Question : Pourquoi le répertoire est-il listé comme vide alors qu'un dossier .ssh existe à l'intérieur ?

-- Mise à jour --

Je me suis connecté en root car il s'agit d'un serveur de test. Je le crée et le détruit à plusieurs reprises.

35voto

Patrick Points 498

ls n'affiche pas les répertoires cachés (les répertoires et fichiers cachés sont ceux qui commencent par un . , tels que .ssh )

Essayez d'utiliser ls -a dans le répertoire.

Extrait de la page de manuel ls :

-a, --all

ne pas ignorer les entrées commençant par .

Comme indiqué dans les commentaires, les répertoires et fichiers "cachés" n'existent pas techniquement, il y a simplement un code intégré dans de nombreux outils courants qui traite les fichiers et répertoires "cachés". . y .. avec une signification particulière, ce qui a pour conséquence que . est généralement considérée comme "cachée" par la plupart des outils. La raison pour laquelle j'ai utilisé ce terme est qu'il est courant de l'entendre ainsi.

En outre . y .. ont généralement une signification particulière pour la plupart des systèmes de fichiers, indiquant respectivement le répertoire courant et le répertoire parent.

4voto

Bruce Points 151

A l'étape 3, tapez ls -a pour afficher le contenu du répertoire.

Fichier ou répertoire dont le nom commence par . sera ignorée par ls .

0voto

.ssh est un répertoire caché, car il commence par un .

Pour dresser la liste des fichiers et répertoires cachés, utilisez ls -a au lieu de ls .

-2voto

ctopaloglu Points 51

"." est réservé aux dossiers/fichiers cachés. ls par défaut ne listera pas les fichiers et répertoires cachés. ("." et " " sont deux répertoires cachés par défaut dans n'importe quel répertoire). Pour afficher tous les fichiers à l'intérieur d'un dossier, utilisez la commande ls -a o ls -al (si vous souhaitez obtenir plus de détails sur chaque fichier/dossier).

-4voto

Max Points 2287

Pour créer le répertoire, vous devez supprimer le répertoire existant

Utilisez rm -rf .ssh pour supprimer le répertoire.

Ou s'il existe déjà Vous pouvez utiliser cd .ssh

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X