Можно использовать >>
для добавления и 2> /dev/null
для перенаправления stderr:
mycommand >> outputfile 2> /dev/null
Хотя я подозреваю, что что-то очень похожее уже спросили...
Используя find
все еще предпочтительный способ удалить файлы. См. http://mywiki.wooledge.org/UsingFind для больше.
Один способ сделать это состоит в том, чтобы создать файл с меткой времени в нем. например,
touch -t 201311220000 /tmp/timestamp
Теперь удалите файлы GNUfind
(принимающий в текущем каталоге), которые соответствуют метке времени, например:
find . -type f ! -newer /tmp/timestamp -delete
или не GNU находят
find . -type f ! -newer /tmp/timestamp -exec rm {} \;
С GNU или некоторым BSD find
s:
find . ! -newermt 2013-11-22 ! -type d -delete
Обратите внимание, что это проверяет время последнего изменения файлов. На некотором BSDs можно использовать -newerBt
вместо -newermt
проверять inode время рождения файла при наличии вместо этого.
find /path/to/directory/ -mtime +<number of days> -name '<file name>' -exec rm -rf {} \;
пример:
find /Netap_fileshare_backup/SQL/DB_backups/xeo/ -mtime +15 -name 'ORA_XEO*' -exec rm -rf {} \;
В этом случае будут удалены все файлы, начинающиеся с "ORA_XEO" более 15 дней.
type -f
ограничивает действие файлами только. – Valentin Bajrami 15.06.2017, 11:20