vasal Δημοσ. 16 Ιουλίου 2008 Δημοσ. 16 Ιουλίου 2008 Yπάρχει τρόπος να αδειάζω directories με κάποιο script? Δηλαδή στο φάκελο D:\users\<username> να διαγράφονται όλα τα αρχεία που περιέχονται, αλλά οι φάκελοι <username> να μένουν στη θέση τους. Kάποιο έτοιμο σκριπτάκι ίσως; Ευχαριστώ. Βασίλης
nikos.g Δημοσ. 16 Ιουλίου 2008 Δημοσ. 16 Ιουλίου 2008 Εάν έχει linux, άνοιξε μια κονσόλα, πήγεναι στην τοποθεσία που θες με cd /που/θες/να/πας και μετά εκτελείς την εξής γραμμή: for i in `ls -F | grep /`; do (cd $i; echo $i; rm -fr *); done το "ls -F | grep /" σου δείχνει ποια directory υπάρχουν εκεί που είσαι και το rm -fr * σβήνει τα πάντα, αφού πρώτα έχει μπει σε κάθε directory.
bilco Δημοσ. 16 Ιουλίου 2008 Δημοσ. 16 Ιουλίου 2008 Αντιγράφεις τα παρακάτω στο notepad, το σώζεις με κατάληξη .vbs και πρόσεχε πολύ στη χρήση του. > ' Διαγράφει όλα τα αρχεία από τον φάκελο που επιλέγει ο χρήστης καθώς και τα ' αρχεία των υποφακέλων, χωρίς να πειράζει τη δομή των φακέλων. ' Προσοχή read-only αρχεία διαγράφονται χωρίς προειδοποίηση ' main ' entry point function main() dim strf ' εισαγωγή χρήστη strf = GetFolder if strf = "" then exit function end if ' επιβεβαίωση ret = MsgBox("Όλα τα αρχεία στον φάκελο '" & strf & _ "' και στους υποφακέλους θα διαγραφούν", 1,"ΔΙΑΓΡΑΦΗ ΑΡΧΕΙΩΝ?") if (ret = 1) then ' προχωράμε Delall strf end if end function ' Εμφανίζει τον διάλογο επιλογής φακέλου και επιστρέφει το path του ' φακέλου που επιλέχθηκε. Αν ο χρήστης πατήσει άκυρο στο διάλογο, επιστρέφει ' κενό string function GetFolder() dim shell, ofolder, ofi set shell = CreateObject("Shell.Application") set ofolder = shell.BrowseForFolder(0, "Επιλέξτε φάκελο", 0, 17) if (ofolder is nothing) then GetFolder = "" else set ofi = ofolder.Self GetFolder = ofi.Path end if set ofi = nothing set ofolder = nothing set shell = nothing end function ' Διαγράφει τα αρχεία του φακέλου strFolder καθώς και τα ' αρχεία των υποφακέλων του ... function Delall(strFolder) dim fso set fso = CreateObject("Scripting.FileSystemObject") RDel fso.GetFolder(strFolder) set fso = nothing end function ' ... αναδρομικά function RDel(ofolder) dim osubf, ofile for each osubf in ofolder.SubFolders RDel(osubf) next for each ofile in ofolder.Files ofile.Delete(true) ' και τα read-only next end function
Evgenios1 Δημοσ. 18 Ιουλίου 2008 Δημοσ. 18 Ιουλίου 2008 Ανιξε ενα Nodepade (txt) και γραψε > CD D:\users\<username>\ del /q /s *.* save like .bat file οπου *.* <ονομα>.<τυπος> μπωρεις να βαλει ητε συγγεκριμενο τυπο ητε ονομα
bilco Δημοσ. 19 Ιουλίου 2008 Δημοσ. 19 Ιουλίου 2008 Ανιξε ενα Nodepade (txt) και γραψε > CD D:\users\<username>\ del /q /s *.* save like .bat file οπου *.* <ονομα>.<τυπος> μπωρεις να βαλει ητε συγγεκριμενο τυπο ητε ονομα Καλώς ήρθες στο insomnia. Μάλλον δεν κατάλαβες καλά τι ζητάει.
Evgenios1 Δημοσ. 21 Ιουλίου 2008 Δημοσ. 21 Ιουλίου 2008 Καλώς ήρθες στο insomnia.Μάλλον δεν κατάλαβες καλά τι ζητάει. Για να τα οργανονει σε φακελους δεν θα εχει και πολλους χρηστες. Τωρα αν κανω λαθος και εχει πολλους ... τι να πω? Ας παρει μια Database SQL ή εστω Accses. Μια ηδεα ερηξα στο τραπεζι.
vasal Δημοσ. 24 Ιουλίου 2008 Μέλος Δημοσ. 24 Ιουλίου 2008 Για να τα οργανονει σε φακελους δεν θα εχει και πολλους χρηστες.Τωρα αν κανω λαθος και εχει πολλους ... τι να πω? Ας παρει μια Database SQL ή εστω Accses. Μια ηδεα ερηξα στο τραπεζι. Eίναι δυστυχώς 40-50 και κατά καιρούς τροποποιούνται (όχι πολύ συχνά). Αυτό με την Access/SQL είναι σχετικό; Thanx πάντως...
Bspus Δημοσ. 24 Ιουλίου 2008 Δημοσ. 24 Ιουλίου 2008 Η λυση του bilco δεν σε καλυψε? Θες στο καθε user folder να σβηνονται τα αρχεια απο κατω του αλλα τα subfolders του καθε χρηστη να παραμενουν η μπορουν να σβηστουν και αυτα? Αν δεν σε πειραζει να σβηνονται τοτε μια απλη λυση ειναι ενα σκριπτ που Πριν σβησε οτιδηποτε κανει ενα dir να δει τι user folders υπαρχουν. Σωζει τα αποτελεσματα σε ενα τχτ Σβηνει τα παντα, οπως εδειξε ο Ευγενιος Μετα ξαναδημιουργει τα user folders και σβηνει το τχτ Οχι οτι αυτη η λογικη δεν μπορει να επεκταθει για να διατηρησει ολη τη δομη των φακελων ων χρηστων, αλλα δεν θα ειναι πια τοσο απλο για ενα batch file. Απ΄οτι φαινεται αυτο εχει κανει ο bilco σε vbs.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.