[Appendix D] D.2 Problems Saving Files
Author: Linda Lamb
Date: 1998-08-03T20:54:49Z

#

| Appendix D Problem Checklist |

## D.2 Problems Saving Files

- You try to write your file, but you get one of the following messages:

  >     File exists
  >     File file exists - use w!
  >     [Existing file]
  >     File is read only

  Type `:w!` file to overwrite the existing file, or type `:w!` newfile to save the edited version in a new file.

- You want to write a file, but you don't have write permission for it. You get the message "Permission denied."

  Use `:w!` newfile to write out the buffer into a new file. If you have write permission for the directory, you can use `mv` to replace the original version with your copy of it. If you don't have write permission for the directory, type `:w!` pathname/file to write out the buffer to a directory in which you do have write permission (such as your home directory).

- You try to write your file, but you get a message telling you that the file system is full.

  Type `:!df` to see whether there's any space on another file system. If there is, choose a directory on that file system and write your file to it with `:w!` pathname. (Starting an `ex` command with an exclamation point gives you access to UNIX, and `df` is the UNIX command to check a disk's free space.)

- The system puts you into open mode and tells you that the file system is full.

  The disk with `vi`'s temporary files is filled up. Type `:!ls /tmp` to see whether there are any files you can remove to gain some disk space. If there are, create a temporary UNIX shell from which you can remove files or issue other UNIX commands. You can create a shell by typing `:sh`; type `[CTRL-D]` or `exit` to terminate the shell and return to `vi`. (On a Berkeley UNIX system, you can simply type `[CTRL-Z]` to suspend `vi` and return to the UNIX prompt; type `%` to return to `vi`.) Once you've freed up some space, write your file with `:w!`.

- You try to write your file, but you get a message telling you that your disk quota has been reached.

  Try to force the system to save your buffer with the `ex` command `:pre` (short for `:preserve`). If that doesn't work, look for some files to remove. Use `:sh` (or `[CTRL-Z]` if you are using a Berkeley system) to move out of `vi` and remove files. Use `[CTRL-D]` (or `%`) to return to `vi` when you're done. Then write your file with `:w!`.

D.1 Problems Opening Files |  | D.3 Problems Getting to Visual Mode