{
"name": "shred",
"description": "Overwrite a file to hide its contents, and optionally delete it",
"options": [
{
"names": [
"--force",
"-f"
],
"description": "Change permissions to allow writing if necessary"
},
{
"names": [
"--iterations",
"-n"
],
"description": "Overwrite N times instead of the default (3)",
"takes_arg": true,
"arg": {
"name": "N",
"suggestions": [
"3",
"5",
"7"
]
}
},
{
"names": [
"--random-source"
],
"description": "Get random bytes from FILE",
"takes_arg": true,
"arg": {
"name": "FILE",
"suggestions": [
"/dev/urandom",
"/dev/random"
],
"template": "filepaths"
}
},
{
"names": [
"--size",
"-s"
],
"description": "Shred this many bytes (suffixes like K, M, G accepted)",
"takes_arg": true,
"arg": {
"name": "N",
"suggestions": [
"1K",
"1M",
"1G"
]
}
},
{
"names": [
"--remove"
],
"description": "Like -u but give control on HOW to delete",
"takes_arg": true,
"arg": {
"name": "HOW",
"description": "'unlink' => use a standard unlink call, 'wipe' => also first obfuscate bytes in the name, 'wipesync' => also sync each obfuscated byte to the device",
"suggestions": [
"unlink",
"wipe",
"wipesync"
]
}
},
{
"names": [
"--verbose",
"-v"
],
"description": "Show progress"
},
{
"names": [
"--exact",
"-x"
],
"description": "Do not round file sizes up to the next full block; this is the default for non-regular files"
},
{
"names": [
"--zero",
"-z"
],
"description": "Add a final overwrite with zeros to hide shredding"
},
{
"names": [
"--help"
],
"description": "Display this help and exit"
},
{
"names": [
"--version"
],
"description": "Output version information and exit"
}
],
"args": [
{
"name": "FILE",
"description": "File(s) to shred",
"is_variadic": true,
"template": "filepaths"
}
]
}