sponge - Man Page

soak up standard input and write to a file

Examples (TL;DR)

Synopsis

sed '​.​.​.' file | grep '​.​.​.' | sponge [-a] file

Description

sponge reads standard input and writes it out to the specified file​. Unlike a shell redirect, sponge soaks up all its input before writing the output file​. This allows constructing pipelines that read from and write to the same file​.

sponge preserves the permissions of the output file if it already exists​.

When possible, sponge creates or updates the output file atomically by renaming a temp file into place​. (This cannot be done if TMPDIR is not in the same filesystem​.)

If the output file is a special file or symlink, the data will be written to it, non-atomically​.

If no file is specified, sponge outputs to stdout​.

Options

-a

Replace the file with a new file that contains the file's original content, with the standard input appended to it​. This is done atomically when possible​.

Author

Colin Watson and Tollef Fog Heen

Info

2006-02-19 moreutils