Writing a file means saving the edits and updating the file's modification time.
| ZZ | Quit vi, writing the file only if changes were made. |
| :x | Same as ZZ. |
| :wq | Write and quit file. |
| :w | Write file. |
:w file | Save copy to file. |
:n1,n2w file | Write lines n1 to n2 to new file. |
:n1,n2w >> file | Append lines n1 to n2 to existing file. |
| :w! | Write file (overriding protection). |
:w! file | Overwrite file with current buffer. |
:w %.new | Write current buffer named file as file.new. |
| :q | Quit file. |
| :q! | Quit file (discarding edits). |
| Q | Quit vi and invoke ex. |
| :vi | Return to vi after Q command. |
:e file2 | Edit file2 without leaving vi. |
| :n | Edit next file. |
| :e! | Return to version of current file at time of last write. |
| :e# | Edit alternate file. |
| % | Current filename. |
| # | Alternate filename. |