SHRED(1)

πŸ’… SHRED(1) β€” the General Commands Manual page, but make it cute

okay bestie, welcome to SHRED, the little command that goes full 🧼✨ serial-shredder on your files so that even someone with very expensive hardware probing has a bad time trying to bring them back. iykyk.


✨ NAME ✨

shred β€” overwrite the specified FILE(s) repeatedly, in order to make it harder for even very expensive hardware probing to recover the data. πŸ’€


πŸ¦‹ SYNOPSIS πŸ¦‹

shred [OPTION]... FILE...

🌸 DESCRIPTION 🌸

Overwrite the specified FILE(s) repeatedly, in order to make it harder for even very expensive hardware probing to recover the data. that's it. that's the whole vibe. it's giving digital eraser but make it dramatic. 🫢


πŸŽ€ OPTIONS πŸŽ€

  • -f, --force β€” change permissions to allow writing if necessary. she will not take no for an answer. πŸ’…
  • -n, --iterations <NUMBER> [default: 3] β€” overwrite NUMBER times instead of the default (3). glow-up, but repeated.
  • -s, --size <N> β€” shred this many bytes (suffixes like K, M, G accepted). yes babe, suffixes are accepted, we love a flexible queen.
  • -u β€” deallocate and remove file after overwriting. bye bye bestie πŸ‘‹
  • --remove[=<HOW>] β€” like -u but give control on HOW to delete; see below. main character energy, you pick the exit.
  • -v, --verbose β€” show progress. not me watching the bar go brrr πŸ“
  • -x, --exact β€” do not round file sizes up to the next full block; this is the default for non-regular files. precise. iconic. no rounding, no crumbs.
  • -z, --zero β€” add a final overwrite with zeros to hide shredding. stealth mode activated ✨
  • --random-source β€” take random bytes from FILE.
  • -h, --help β€” Print help.
  • -V, --version β€” Print version.
  • [file] β€” the file, obviously. she's right there in the synopsis too.

🌈 possible values for --remove[=<HOW>] 🌈

  • unlink
  • wipe
  • wipesync

πŸ”₯ EXTRA πŸ”₯

Delete FILE(s) if --remove (-u) is specified. The default is not to remove the files because it is common to operate on device files like /dev/hda, and those files usually should not be removed. so yeah β€” hands off the device files unless you really mean it πŸ™ˆ

CAUTION: Note that shred relies on a very important assumption: that the file system overwrites data in place. This is the traditional way to do things, but many modern file system designs do not satisfy this assumption. the following are examples of file systems on which shred is not effective, or is not guaranteed to be effective in all file system modes:
  • log-structured or journal file systems, such as those supplied with AIX and Solaris (and JFS, ReiserFS, XFS, Ext3, etc.)
  • file systems that write redundant data and carry on even if some writes fail, such as RAID-based file systems
  • file systems that make snapshots, such as Network Appliance's NFS server
  • file systems that cache in temporary locations, such as NFS version 3 clients
  • compressed file systems

In the case of ext3 file systems, the above disclaimer applies (and shred is thus of limited effectiveness) only in data=journal mode, which journals file data in addition to just metadata. In both the data=ordered (default) and data=writeback modes, shred works as usual. Ext3 journal modes can be changed by adding the data=something option to the mount options for a particular file system in the /etc/fstab file, as documented in the mount man page (man mount). πŸ“–

In addition, file system backups and remote mirrors may contain copies of the file that cannot be removed, and that will allow a shredded file to be recovered later. so no cap β€” shredding locally does not shred the backup, bestie. 😭


πŸ’œ VERSION πŸ’œ

v(uutils coreutils) 0.12.0


⭐ EXAMPLES ⭐

Overwrite a file:

shred path/to/file

Overwrite a file and show progress on the screen:

shred [-v|--verbose] path/to/file

Overwrite a file, leaving zeros instead of random data:

shred [-z|--zero] path/to/file

Overwrite a file a specific number of times:

shred [-n|--iterations] 25 path/to/file

Overwrite a file and remove it:

shred [-u|--remove] path/to/file

Overwrite a file 100 times, add a final overwrite with zeros, remove the file after overwriting it, and show verbose progress on the screen:

shred [-vzu|--verbose --zero --remove] [-n|--iterations] 100
path/to/file

The examples are provided by the tldr-pages project <https://tldr.sh> under the CC BY 4.0 License. Please note that, as uutils is a work in progress, some examples might fail. 🧚


okay that's the whole page!! πŸ’– this was dated 2026-09-25 and it's the SHRED(1) page from the General Commands Manual β€” go forth and overwrite responsibly, queen πŸ‘‘βœ¨

πŸ“¦ where this page comes from