перенаправление gunzip в /etc/: такого файла или каталога нет

перенаправление gunzip в /etc/: такого файла или каталога нет

Я пытаюсь следоватьэтот урок о том, как сделать vpn, но у меня возникли некоторые проблемы с застегиванием ружья.

Если я попытаюсь ввести код

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

он отвечает

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

Что происходит?

Я поставил sudoкавычки, потому что без них gzipнельзя etc.

решение1

Кавычки поставлены неправильно.

Вместо этого запустите его так:

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

Как вы уже поняли, вся '/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf'часть была обработана как один аргумент, и, конечно же, файла с таким путем не существует.

Теперь он разделен на один аргумент пути в кавычках для gunzipкоманды ( /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz'), за которым следует перенаправление вывода Bash в '/etc/openvpn/server.conf'.

Однако, поскольку ни один из двух путей в вашем примере не содержит пробелов или других специальных символов, кавычки не нужны и их можно было бы вообще опустить.


Поскольку вы говорите, что у вас нет прав на запись в файл, куда вы хотите перенаправить вывод, вы должны написать это так:

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

Связанный контент