2012-08-13 4 views
0

Я пытаюсь написать скрипт shred для вывода файлов, удаленных в текстовый файл, но я думаю, что я делаю что-то не так с выходом? Я также подумывал добавить в скрипт письмо по электронной почте, чтобы отправить электронное подтверждение, когда все файлы были удалены, но в первую очередь нужно заставить выходной файл работать с текстовым файлом.Shred script с выходом

Благодаря

#!/bin/bash 

# Use on remote server 

LOCATION="/home/user/Test" 
TIMES=-n38 

cd $LOCATION 

# Delete all files in location 30 times 

echo "Deleting all delete located at $LOCATION " 

nohup find $LOCATION -exec shred $TIMES -u '{}' \; & >> /home/user/output.txt 

echo "All data at $LOCATION has been shredded $TIMES times" 

# Delete the partition 

#nohup shred -n 30 -vz /dev/sdb1 & 
+0

Удалите '&'. –

+0

Или добавьте «подождите» где-нибудь в вашем скрипте. – user1202136

+0

Или вы можете удалить пробел после '' & ''. '' & >> '' имеет смысл, но '' & >> '' нет. – LiMar

ответ

0

Амперсанд должен быть в конце команды, после перенаправления стандартного вывода:

nohup find $LOCATION -exec shred $TIMES -u '{}' \; >> /home/user/output.txt & 
+0

Ahh great - работает с удовольствием – Grimlockz

0

& помещает процесс в фоновом режиме; поэтому использование его между командой оболочки не путь ...

Попробуйте переместить его к концу ...

nohup <your shell command> & 
0

1) Добавить -print вариант find команды, например,

find $LOCATION -print -exec shred $TIMES -u '{}' \; 

2) Как и другие уже указывали, двигаться амперсанд к концу

3) Не должно быть shred $TIMESshred -n $TIMES?

Смежные вопросы