Que signifie ./
?
Par exemple: La commande suivante signifie-t-elle déplacer des fichiers du dossier Gapache2
vers sites-available
:
root@ip-10-112-55-203:/etc/mds-1.2-beta4/sana/config/etc/Gapache2# mv ./ /etc/Apache2/sites-available
Si non, comment cela devrait-il être modifié?
J'ai essayé d'obtenir quelque chose de Google Search. Mais ./
est ignoré par les moteurs de recherche.
Sous Unix/linux .
signifie le répertoire en cours dans votre cas /etc/mds-1.2-beta4/sana/config/etc/Gapache2
. Il y a aussi beaucoup de raccourcis comme:
..
: répertoire parent (/etc/mds-1.2-beta4/sana/config/etc/
)~
: dossier personnelDonc, pour déplacer tous les dossiers et fichiers de /etc/mds-1.2-beta4/sana/config/etc/Gapache2
à /etc/Apache2/sites-available
, la commande sera comme ceci
mv ./* /etc/Apache2/sites-available/
UPDATE: Ce lien est une bonne ressource pour les commandes UNIX de base
.
Sous UNIX/Linux, .
désigne le répertoire en cours. Vous le verrez également répertorié dans les commandes ls
:
ls -al
total 40348
drwx------ 20 root root 4096 Feb 2 23:05 . <-- there!
drwxr-xr-x 24 root root 4096 Jan 31 20:07 ..
-rw-r--r-- 1 root root 322 Dec 16 17:35 20-revert
./
et les liens symboliquesLors de l'ajout du /
, cela a la même signification que l'ajout d'un /
à tout autre nom de répertoire. Cela permettra simplement de vous assurer que vous n'opérez pas sur un fichier. Généralement, les commandes cp
et mv
ne diffèrent pas, mais vous verrez une différence lorsque vous utilisez des liens symboliques. Supposons que cette structure:
.
├── a
├── dir1
│ ├── b
│ └── c
├── dir2
│ └── d
└── symlink -> dir2
Ensuite, une liste régulière montrera le lien lui-même
ls -l symlink
lrwxrwxrwx 1 gert gert 4 Feb 3 12:15 symlink -> dir2
mais ajouter le /
lui fera descendre la liste et montrer le contenu.
ls -l symlink/
total 0
-rw-rw-r-- 1 gert gert 0 Feb 3 12:15 d
Cela signifie que lorsque vous utilisez des opérations, il est bon d’ajouter le /
si vous vous référez à son contenu ou si vous voulez copier/déplacer dans en déréférencant le lien, plutôt que de remplacer le lien lui-même.
Voir aussi: tirets de fin sur les liens symboliques vers des répertoires
Dans l'exemple de votre question, vous voulez vraiment déplacer uniquement le contenu du répertoire dans l'autre. Donc, comme l'a souligné aneeshep , vous devriez utiliser mv ./* destdir/
. C'est la même chose que mv * destdir/
car votre Shell (Bash) développe le *
à partir du répertoire actuel par défaut.
Donc, je le lancerais comme ceci (dans le répertoire source):
mv * /etc/Apache2/sites-available/