redirecionamento gunzip para /etc/: Esse arquivo ou diretório não existe

redirecionamento gunzip para /etc/: Esse arquivo ou diretório não existe

Estou tentando seguireste tutorial sobre como fazer uma VPN, mas estou tendo alguns problemas para fazer o gunzip.

Se eu tentar colocar o código

sudo gunzip -c '/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf'

ele responde com um

gzip: /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf.gz: No such file or directory

O que está acontecendo?

Coloquei sudoaspas e porque você não pode gzipfazer isso etcsem elas.

Responder1

Suas aspas estão colocadas incorretamente.

Em vez disso, execute assim:

sudo gunzip -c '/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz' > '/etc/openvpn/server.conf'

Do jeito que estava, toda a '/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf'parte foi tratada como um único argumento - e é claro que não existe nenhum arquivo com esse caminho.

Agora ele é dividido em um argumento de caminho citado para o gunzipcomando ( /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz') seguido por um redirecionamento de saída Bash para '/etc/openvpn/server.conf'.

No entanto, como nenhum dos dois caminhos no seu exemplo contém espaços ou outros caracteres especiais, as aspas não são necessárias e também poderiam ter sido totalmente omitidas.


Como você diz que não tem permissão de gravação no arquivo para o qual deseja redirecionar a saída, você deve escrevê-lo assim:

sudo bash -c "gunzip -c '/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz' > '/etc/openvpn/server.conf'"

informação relacionada