2014-12-18 13 views
5

Bu yüzden, 14 günlükten daha eski dizinleri silmeyle ilgili her yazıya baktım. Yazdığım Komut dosyaları ile çalışır ancak bazı nedenlerle dizinleri silmiyor. İşte benim senaryolarım.X gününden daha eski dizinleri sil

#!/bin/bash 
find /TBD/* -mtim +1 | xargs rm -rf 

Bu kod, bu kod başarıyla TBD içindeki FILES'ı silmiş, ancak iki dizin kalmıştır. Zaman damgasını kontrol ettim ve zaman damgasına göre son değişiklikten bu yana 2 gün geçiyorlar. Özellikle Aralık 16 16:10 Bunu anlayamıyorum. Crontab'ım bu koşuyu koşturuyor her dakika ve kütükler ve günlüğün sadece gösterdiği gibi.

+ /scripts/deletebackups.sh: :2:BASH_XTRACEFD=3xargs rm -rf 
+ /scripts/deletebackups.sh: :2: BASH_XTRACEFD=3find /TBD/contents TBD/contents -mtime +1 

İçeriği, aslında pxe sunucumuzdaki insanların adı olduğu için kullandım. Ben her iki dizinleri INSIDE her dosya ve klasörleri kontrol ettim ve zaman damgaları olması gerektiği gibi ana dizinin aynıdır, ancak hala silme değil.

İzinler bir şey olabilir mi? Sudo nano deletebackups.sh kullanarak betik yazdım En soldaki TBD altında ls yazdığımda silmeyecek iki dizinin her biri için drwxr-xr-x 3 hscadministrator kök 4096 DEC 16 16:10 gösteriliyor. Tüm bu harflerin ne anlama geldiğini aşina değilim. Eğer daha dosyaları eski silmek arıyorsanız,

find /TBD/* -mtime +1 -exec rm -rf {} \; 

Not: Zaten çalıştılar Bu kodun

Diğer yineleme

find /TBD/* -mtime +1 rm -r {} \; 

cevap

2

-exec ekleyin ve bulmak için -f vardır/TBD eski 1 den günde

-mtime +14 
+0

Orijinal yazılarda bundan bahsederdim. Çalışmayacak şekilde hem dosyaları hem de dizinleri silmeye ihtiyacım var. AMA sadece meraklı olmak için, dizinleri silmek için çalıştı ve hala işe yaramadı. – stobiewankenobi

+0

Bulduğunuz komutta -exec'i unuttun, değiştirirseniz çalışmalısınız. – Bolboa

+0

Peki, belirli bir yerde olmalı, değil. sadece tüm dizinleri işaretlemek? Tüm dizinlerin silinmesini istemiyorum. – stobiewankenobi

9

silmek için dizinleri: 14 gün, sen mtime değiştirmeniz gerekir

find /TBD -mtime +1 -type d | xargs rm -f -r 
+0

Ayrıca dosyaları silmeyi istiyorum ama gerekirse dosyaları belirleyen betiğe başka bir satır ekleyeceğim. Bunu deneyeceğim ve işe yarayıp yaramadığına bakacağım. – stobiewankenobi

+0

Hayır. İki dizin hala orada. – stobiewankenobi

+0

Bul komutunu çalıştıran kullanıcının bu dizinleri silmek için gerekli ayrıcalıklara sahip olduğundan emin misiniz? – mti2935

İlgili konular