cp: opção inválida - 'o'

8

Estou seguindo um script de instalação no GitHub e uma das etapas é:

cp sources/openssl/1.0.1p/Android.mk -o sources/openssl/$OPENSSL_VERSION/Android.mk

Mas meu terminal lançou um erro cp: invalid option -- 'o'

Eu verifiquei man cpno meu Ubuntu, e não há opção -o. Isso é uma coisa do MAC OS? O que cp -osignifica?

Adhy Satya
fonte
Eu não tenho certeza onde a -o veio, mas eu estou presumindo que ela não é necessária e que a cópia é simplesmente copiando de um destino de origem para um diretório de origem
Raman Sailopal

Respostas:

5

Você pode remover com segurança a opção -o. Btw, $ OPENSSL_VERSION está definido?

Alex Austin
fonte
Obrigado. Sim, ele é definido (OPENSSL_VERSION = 1.0.2h)
Adhy Satya
então apenas remova -o, acho que as pessoas no github não pretendiam colocá-lo lá, realmente #
Alex Austin
8

Isso é um erro de digitação. Não existe uma implementação cpque tenha uma -oopção em qualquer Unix que eu conheça. Meu palpite é que essa opção pode ser removida com segurança.

Ele pode ser que eles queriam dizer cp -p(preservar modo, timestamp e propriedade quando usado com GNU cpe outros), ou cp -ipara as perguntas interativas caso o arquivo já existe.

Obviamente, eles estão usando o GNU cp, pois misturam operandos com opções. As ferramentas comuns geralmente param de analisar a linha de comando na primeira não opção, mas as ferramentas GNU tentam ser inteligentes.

Kusalananda
fonte
Enfim, cp file -o dirserve para copiar os arquivos filee -opara dir. Apenas GNU (ou GNU-like como busybox) cplevaria que -ocomo uma opção (e somente quando $POSIXLY_CORRECTnão está no ambiente)
Stéphane Chazelas
2
Possivelmente, era confusão com o comum curl... -o. Mas isso tudo é adivinhação. Somente Lei Pi pode realmente explicar.
JdeBP #
Com o GNU cp, cp --oseria uma abreviação para cp --one-file-system. Concordo com o JdeBP que é apenas um erro de digitação, especialmente considerando que a próxima seção faz algo semelhante curl -o. Não é nenhuma indicação de que eles estejam usando o GNU cpou qualquer outra implementação.
Stéphane Chazelas
1
@ user000001, sim, mas --o(ou --on, ou --one...) também trabalho (note o traço duplo)
Stéphane Chazelas
3
@ user000001 Se alguma vez escrever um script (ou documentação), não abrevie as opções. Isso torna desnecessariamente difícil de entender.
Kusalananda