Para usar o diretório atual como o diretório de destino, use um único ponto ' .
'
Resposta longa
Usando seu exemplo, você digitaria: cp ~/anotherdir/dir2/file .
Para ver os nomes dos diretórios dos pontos .
, ..
e ../../
em ação, copie e cole os seguintes comandos em seu Terminal:
mkdir a && mkdir a/b && mkdir a/b/c && mkdir a/b/c2
cd a/b/c
cp /etc/default/grub .
cp /etc/default/grub ..
cp /etc/default/grub ../c2
cd ../../
tree
A saída do comando tree aparece assim:
.
└── b
├── c
│ └── grub
├── c2
│ └── grub
└── grub
3 directories, 3 files
O .
na parte superior da saída da árvore representa o novo diretório atual a
, que é o avós de a/b/c
para o qual navegamos usando o comando cd ../../
. Abaixo de a
, vemos os subdiretórios a/b
, a/b/c
e a/b/c2
Análise linha por linha
Primeiro, criamos 4 diretórios em uma linha usando &&
para unir várias linhas.
Depois, mudamos para o diretório a/b/c
, que é o diretório atual dos seguintes comandos de cópia:
- No primeiro comando de cópia (
cp
), definimos o destino para o nosso
diretório atual ( c ) com .
.
- No segundo comando de cópia, definimos o destino para o pai
diretório ( b ) com
..
.
- No terceiro comando de cópia, definimos o destino para o irmão
diretório ( c2 ) com
../c2
Em seguida, conforme declarado anteriormente, alteramos o diretório atual para a
e executamos o comando tree
para exibir todos os diretórios e arquivos em a
.
Limpeza
Depois de terminar, removemos os três diretórios e arquivos com:
cd ~/
rm -r tree