There are many Linux command line programs, that do this job. A couple the more famous one are generally known as:
shred
secure-delete
(which contains several programs for securely deleting)
And some distributions (especially Security-oriented ones) even have some functions built-in natively, for example in the explorer shell.
So this is not really the important or hard to solve part. The more crucial question is, what type of storage medium do you use and how is it formatted?
Do you use Linux that formatted your entire HDD as ext4, according to standards? Then go ahead, you have nothing to fear.
But maybe you use a HDD with a BTRFS, ZFS, or similar file system? Then you got a bigger problem, because files are specifically backed up and very hard to unrecoverably to delete on these file systems.
Do you use a RAID system? Due to the systematic distribution of stored data, it will cause you similar problems as above file systems.
Or do you even use an SSD? That is wholely another topic, too.
So it really depends on these question which operation of what program you really need. Once you find out that your setup is part of one of above mentioned answers, except the first one, then you have to choose the right method for your specific system. If you have the standardized systen mentioned in the first answer, you can use the standard tools. There are also a lot more issueing the same job. You could theoretically even manually use a program like dd or something similar to overwrite a part of a disk block by block repeatedly.