Мне нужно изменить разрешение для одного файла в архиве tar.gz без его распаковки, но я не смог найти никакого способа добиться этого ни на страницах руководства, ни с помощью поиска Google.
Более подробный сценарий:
Мы начинаем на машине Linux с тремя файлами:
[root@localhost tar-test]# ls -l
total 0
-rw-r--r--. 1 root root 0 Nov 17 14:41 a.txt
-rw-rw-r--. 1 root root 0 Nov 17 14:41 b.txt
-rw-r--r--. 1 root root 0 Nov 17 14:41 c.txt
Затем мы создаем архив tar.gz:
tar cvzf test.tar.gz a.txt b.txt c.txt
Затем test.tar.gz отправляется на мой компьютер с Windows. Теперь мне нужно изменить права доступа к файлу .txt без извлечения всего архива. У меня есть доступ к MinGW, но не к полноценной машине Linux (виртуальной или физической). Я также не хочу извлекать весь архив. Можно предположить, что я знаю как имя, так и местонахождение файла в архиве.
Решение ограничено инструментами командной строки, так как я собираюсь написать его позже.