sponge

1 moreutils moreutils

sponge

soak up standard input and write to a file

    			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