
Eu sei que com um -f cp deveria ficar em silêncio, mas não é! Eu faço
cp -rf Functional Functionalssssssss
e se Funcional não existir, diz que não é possível stat 'Funcional'... mas simplesmente não quero ver a mensagem de erro!! Eu quero cuidar deles sozinho
Responder1
A cannot stat...
saída está sendo enviada para stderr
, não stdout
. Para o exemplo específico fornecido na pergunta, o seguinte suprimirá a saída de erro redirecionando stderr
para /dev/null
:
cp -rf Functional Functionalssssssss 2>/dev/null
Além disso, pelo menos para a versão do cp
meu servidor Debian Linux, -f
não é um sinalizador universal de 'silêncio'. Em vez disso, é sinônimo de --force
, o que significa que cp
eliminará silenciosamente qualquer arquivo de destino existente antes de copiar.
Responder2
Se você estiver usando bash ou sh (padrão posix), [ -f file ] && cp file target
é o que você deseja.
Este irá verificar se o arquivo existe e copiá-lo. Diga adeus aos erros.