Em uma janela de terminal, digitei:
mv filename ..\.. [Note the wrong slash.]
Agora não consigo encontrá-lo. Se foi. Fiz algumas pesquisas e verifiquei os arquivos excluídos recuperáveis. Nada. Poof. Serve-me direito de usar uma máquina Windows imediatamente antes.
Alguém sabe para onde foi?
command-line
bash
hidden-files
mv
John
fonte
fonte
find / -iname thefilename -print
talvez ?thefilename
o nome original dos arquivos, essefind
comando não o encontrará sob o novo nome.Respostas:
Não foi a lugar nenhum, está no diretório atual. Foi renomeado como
....
(quatro pontos).Como qualquer nome de arquivo com um nome
.
na frente é tratado como um arquivo oculto, ele fica oculto. Então, se você o fizerls
, não o encontrará. Como sempre, você precisa da opção-a
(ou-A
)ls
para visualizar os arquivos ocultos, ou seja,ls -a
(ouls -A
) para vê-lo.Deixe-me detalhar, você correu
mv filename ..\..
, os dois primeiros pontos significariam o diretório pai, se fosse../
, mas você usou barra invertida..\
que indica shell para escapar do próximo caractere, mas um ponto.
não tem significado especial para shell. Portanto, ele será tratado como um literal.
e o último.
também será adicionado, então você terá quatro pontos....
como nome de arquivo.Para voltar ao nome anterior (original), execute
mv .... filename
.fonte
la -A
(com A maiúsculo). Faz o mesmo quels -a
mas exclui.
e..
.Execute
mv .... filename
para renomeá-lo novamente. (mv ..\.. filename
funcionaria também, mas\
é supérfluo - como estava no seu comando original.).
e as..
entradas estão presentes em todos os diretórios e referem-se aos diretórios "atual" e "pai", respectivamente. Mas, diferentemente do Windows, seqüências de mais de dois pontos não têm significado especial. Embora seja incomum, você é perfeitamente livre para nomear um arquivo comum com um nome composto inteiramente por pontos, desde que tenha pelo menos três pontos.\
como caractere de escape, garantindo que ele trate o seguinte caractere literalmente, em vez de lhe dar um significado especial. O.
personagem não tem significado especial no shell (em particular, o shell não é o responsável por fazer com que as entradas.
e..
funcionem). Portanto, em seu comando,\.
era equivalente a.
..
. Desde o....
início.
, a execuçãols
sem o sinalizador-A
ou-a
não o revelou.fonte
ainda está no mesmo diretório, apenas um arquivo 'oculto' agora. Você pode recuperá-lo "mv .... filename".
fonte