Bak file

From HandWiki

In computing, ".bak" is a filename extension commonly used to signify a backup copy of a file.

When a program is about to overwrite an existing file (for example, when the user saves the document they are working on), the program may first make a copy of the existing file, with .bak appended to the filename. This common .bak naming scheme makes it possible to retrieve the original contents of the file in case of a failed write that corrupts the file, which could be caused by an operating system crash, power outage, or disk space exhaustion.

Without the backup file, an unsuccessful write event may truncate a file, meaning it cuts off the file at a position, or leaves a blank file. In practice, this could cause a written document to become incomplete or get lost, a multimedia project file (e.g. from a video editor) to become unparseable, and user preferences being reset to default.

In a similar manner, a user may also manually make a copy of the file before the change and append .bak to the filename, or alternatively save revisions into separate files, to facilitate reverting to an earlier revision in case of an error.

Other naming schemes are also in widespread use: file~, file.orig, file.old, and appended time stamps.

Database Applications like FoxPro and SQL Server use .bak files to back up their databases and other applications, like XML shell, create .bak files in their autosave process.[1] They do not get automatically deleted, so they need to be manually deleted after the process using it is stopped.

Example applications using .bak files

This is a partial list of applications that generate .bak files (in some cases as an optional configuration setting):

External links

References