Alguém pode me ajudar nesse comando? [RESOLVIDO]

1. Alguém pode me ajudar nesse comando? [RESOLVIDO]

Bruno Romero
Bruno17

(usa XUbuntu)

Enviado em 26/03/2021 - 23:24h

É 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..?

2) É possivel apagar pastas padrões do linux, tipo a /var, /tmp, /srv etc

3) Em que casos seria usado o >? teria algo especifico?

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?


  


2. Re: Alguém pode me ajudar nesse comando?

Paulo
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)


3. Re: Alguém pode me ajudar nesse comando? [RESOLVIDO]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 27/03/2021 - 02:56h

Em tempo, eu recomendo usar sempre -R para comandos que entendem que um determinado comportamento deve ser recursivo, mesmo quando o comando eventualmente aceitar também -r com o mesmo sentido.

A razão para isso é, apesar de haver variação entre comandos distintos e entre implementações de um mesmo comando por diferentes fabricantes, o padrão POSIX, serve mais ou menus como uma referência para todos os fabricantes, e ele também procurar criar uma certa uniformidade entre diferentes comandos. Vários comandos do POSIX usam -R para operações recursiva (múltiplos níveis de diretórios e subdiretórios).


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts