Как спрашивал ОП в таком же формате...
bash-4.1$ cat test.sh
#!/bin/bash
tr ' ' '\n' < ${1} > temp
while read line
do
count=$(grep -cw ${line} temp)
echo -n "${line}@${count} "
done < temp
echo ""
bash-4.1$ bash test.sh test.txt
This@1 is@1 a@1 test@3 Test@1 test@3 test@3 There@1 are@1 multiple@1 tests.@1
bash-4.1$ cat test.txt
This is a test Test test test There are multiple tests.
Может быть, вы можете начать с загрузки с живого носителя и запустить проверку жесткого диска на наличие плохих блоков.
В живом медиа идентифицируйте свой жесткий диск, используя:sudo fdisk -l
С sdX, соответствующим имени вашего жесткого диска, запустите обнаружение плохих блоков:sudo badblocks -v /dev/sdX > /tmp/bad-blocks.txt