17

I have a large archive with files that I need to edit, but I don't want to extract / zip every time. Is there a way to edit the files directly while in the archive? I opened them and when I save it prompts for a location.

17

7-Zip can do this:

  1. If not already done, would recommend setting the file editor to something better than the Windows standard Notepad, e.g. Notepad++. To do this in 7-Zip, go to Tools -> Options..., select the editor tab and change the "Editor" path (and may as well also change the "View" path) to the relevant executable, e.g. "C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst. The -multiInst option opens this in a new window - see comment from Simo Kivistö.
  2. Open the archive in 7-Zip.
  3. Locate the file to be edited.
  4. Right-click on the file to edit and select "Edit" (alternative shortcut = F4). Make your changes, save them and close the editor window - 7-Zip will only detect the file has changed when the editor has been closed.
  5. When 7-Zip detects the file has been changed it will display a prompt such as "File 'abc.txt' was modified. Do you want to update it in the archive?". Click on OK and it will then load the changed file back into the zip file, which may take a bit of time.
7
  • 1
    @JinSnow Thanks a lot. Similarly, when the editor is Word, you have to close every open Word window.
    – Noumenon
    Aug 17 '18 at 0:03
  • 5
    1: In 7-zip option, you can set np++ as editor. 2: If you use np++ to edit 7zip, be careful: saving isn't enough, you have to close np++ (7zip doesn't detect the change unless you close np++)
    – JinSnow
    Aug 21 '18 at 8:08
  • Can this work on binary files?
    – Wossname
    Oct 18 '18 at 13:50
  • doesn't work for guzzle's phar
    – beppe9000
    May 8 '19 at 17:59
  • 1
    Step 1: write the notepad++ path as follows: "C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst. This way it opens the file in a new window and you only have to close that. Also: F4 is a handy shortcut for opening the file for editing. Mar 23 at 9:29
3

Simple answer is NO. There's no way to tell how big the resulting file will be after edit so it can't just be stored back in the same place in the zipfile. What you might be able to find is a program that allows you to do the extract/edit/rezip without you having to worry about the details yourself. It would help to specify your environment (OS etc).

3

Use Total Commander. Navigate to the archive, hit Enter to enter the specific file you want to modify, hit Save after modify and close the editing program. Total Commander will ask you if you want to update the archive so you hit Yes.

1
  • doesn't work for me, it triggers explorer's unknown file type dialog
    – beppe9000
    May 8 '19 at 18:00
3

At least on Linux and Windows+Cygwin, you can use vim

It will let you browse inside the ZIP file, choose a text file and press Enter ↵ to edit it

1
1

Open the zip file with winrar, double click an embedded text file, it should open in an external editor. Change and close the text file. Winrar then asks if it should updated the archive with the changed file.

0

Use an editor that can look inside archives.

You don't say what platform you're using. If you use Ubuntu with its default interface, this is completely transparent: click on the archive, then click on the file inside the archive. More generally, open the archive in the Gnome archiver (File Roller) and edit the file in a Gnome application.

Emacs is available for every major desktop platform (and many minor ones) and transparently edits files inside archives (provided the relevant command-line archiving tool is installed).

1
  • I'm using windows 7 and Winrar, for the moment I extracted / edited / re-archived the file which was a pain, but I will try one of these programs if the needs arise, which I'm sure it will, hopefully they work. Sep 23 '10 at 14:14
0

Use winrar or 7-zip to extract the file you want to edit. Then drag it back into the same directory in winrar/7-zip where you extracted it from in the archive.

0

Answer: get WinRAR. You drag files into the zip thats opened in winrar and a menu pops up. Just press OK and they are now insaid.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.