cat command - irá sobrescrever?

5

Para passar o conteúdo de um arquivo para outro, podemos, por exemplo:

cat ~/temp_minhakey.pub >> ~/.ssh/authorized_keys

Digamos que precisamos anexar mais conteúdo a authorized_keys, mas não queremos substituí-lo.

Devemos usar o gato novamente para as próximas chaves? Ou devemos sinalizar com algo específico?

Obrigado antecipadamente.

    
por MEM 29.03.2011 / 17:53

2 respostas

13
cat ~/temp_minhakey.pub >> ~/.ssh/authorized_keys

acrescenta o conteúdo de ~/temp_minhakey.pub a ~/.ssh/authorized_keys , mas não sobrescreve. Isso é seguro.

Você pode estar confuso com um único > que sobrescreve o arquivo. O próximo comando irá sobrescrever o seu arquivo authorized_keys :

cat somefile > ~/.ssh/authorized_keys
    
por Lekensteyn 29.03.2011 / 17:58
6

A última parte desse comando não tem nada a ver com gato; o > > é um redirecionamento de shell que sempre será anexado a qualquer arquivo de destino que você esteja especificando. Se você usou > em vez disso, substituiria o arquivo.

Existem vários outros redirecionamentos de shell, e você será mais produtivo em uma linha de comando se souber quais são e quando usá-los:

link

    
por ImaginaryRobots 29.03.2011 / 18:14