gshred(1) is shred(1) from GNU coreutils on OpenBSD
rm(1) on OpenBSD
-P Overwrite regular files before deleting them. Files are
overwritten once with a random pattern. Files with multiple
links will be unlinked but not overwritten.
tool="wipe"
elif which shred &> /dev/null; then
tool="shred"
+ elif which gshred &> /dev/null; then
+ tool="gshred"
+ elif _F=$(mktemp); rm -P "${_F}" &> /dev/null; then
+ tool="rm -P"
else
# Worst implementation
message="WARNING $message"
echo "$message $path using $tool..."
if [ -d "$path" ]; then
- if [ "$tool" == "wipe" ] || [ "$tool" == "rm" ]; then
+ if [ "$tool" == "wipe" ] || [ "$tool" == "rm" ] || [ "$tool" == "rm -P" ]; then
$tool -rf $path
else
find $path -exec $tool -uf {} \;
fi
else
- if [ "$tool" == "wipe" ] || [ "$tool" == "rm" ]; then
+ if [ "$tool" == "wipe" ] || [ "$tool" == "rm" ] || [ "$tool" == "rm -P" ]; then
$tool -f "$path"
else
$tool -uf "$path"