paulo1205
(usa Ubuntu)
Enviado em 27/03/2021 - 00:18h
Bruno17 escreveu:
É sobre uma questão de concurso:
Após verificar que o diretório /var/bo no Linux está sem espaço para novos arquivos, Pedro resolveu mover todos os arquivos e subdiretórios existentes nesse diretório para o diretório /etc/backup/bo localizado em outro disco, também no ambiente Linux. Nessa situação, a partir do diretório raiz do sistema operacional, o comando correto que Pedro deve usar para executar essa tarefa é mv -Rf /var/bo > /etc/backup/bo.
Nos comentarios dela em um banco de questões, não fica muito claro o REAL motivo dela estar ERRADA.
Eu tenho 4 perguntas:
1) No comando, ele iria apagar a pasta var ou renomear a pasta var.. para etc..?
Esse comando mostrado simplesmente daria erro, porque o
mv requer que você indique um ou mais caminhos de origem e um caminho de destino, como último argumento. Como ali só aparece um caminho como argumento para o
mv, a sintaxe não é válida.
2) É possivel apagar pastas padrões do linux, tipo a /var, /tmp, /srv etc
É possível apagar. Só não vai fazer muito bem para o bom funcionamento de instalações de distribuições que dependem da existência desses diretórios.
3) Em que casos seria usado o >? teria algo especifico?
Você normalmente usa
> no interpretador de comandos (
shell) para redirecionar mensagens produzidas pelos comandos que você executa para algum arquivo ou canal de comunicação associado a um arquivo ou descritor de arquivo. Sem esses redirecionamentos, tais mensagens são comumente exibidas na tela do terminal.
4) Falaram que o -R não é aceito no comando mv, porém, caso seja executado um comando que o aceite, há diferença entre -r e -R?
Vai depender de cada comando e da implementação. Sistemas UNIX e UNIX-like costumam, sim, em geral, fazer diferença entre maiúsculas e minúsculas. Nas versões GNU do
cp e do
rm (parte do pacote
coreutils),
-r e
-R são sinônimas, mas não são sinônimas no
ls (que também pertence ao
coreutils). Outras implementações dos mesmos comandos podem ter comportamentos diferentes, e isso pode ser bastante relevante se você quiser fazer um
script que funcione em outros sistemas, tais como FreeBSD, Solaris, AIX, NetBSD etc. Por exemplo, o
cp do NetBSD não aceita
-r como opção, apenas
-R, e o próprio padrão POSIX, que quase todos os UNIX e UNIX-like modernos buscam seguir, prescreve apenas
-R, não
-r.
... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)