Πώς να επεξεργαστείτε τις χρονικές σημάνσεις με το Windows PowerShell
- Κατηγορία: Παράθυρα
Το παρακάτω σεμινάριο δείχνει πώς μπορείτε να επεξεργαστείτε τις χρονικές σημάνσεις αρχείων - δημιουργία, τελευταία πρόσβαση και τελευταία εγγραφή - χρησιμοποιώντας το Windows PowerShell.
Το PowerShell είναι μέρος οποιασδήποτε σύγχρονης έκδοσης του λειτουργικού συστήματος Windows της Microsoft. Η Microsoft μετατοπίστηκε στο PowerShell μακριά από τη γραμμή εντολών στα Windows 10, αλλά δεν κατάργησε τη γραμμή εντολών.
Οι χρήστες και οι διαχειριστές των Windows 10 έχουν πρόσβαση και στα δύο, αλλά η εστίαση της ανάπτυξης βρίσκεται σαφώς στο PowerShell.
Κάθε αρχείο στα Windows, καθώς και σε άλλα λειτουργικά συστήματα, έχει αρκετές χρονικές σφραγίδες που σχετίζονται με αυτό. Το σύστημα αρχείων παρακολουθεί τον χρόνο δημιουργίας αρχείων, τον τελευταίο χρόνο πρόσβασης και τον τελευταίο χρόνο εγγραφής.
Πώς να επεξεργαστείτε τις χρονικές σημάνσεις με το Windows PowerShell
Το πρώτο πράγμα που πρέπει να κάνετε είναι να ξεκινήσετε ένα παράθυρο PowerShell. Πατήστε το πλήκτρο Windows, πληκτρολογήστε PowerShell και πατήστε το πλήκτρο Enter μετά. Λάβετε υπόψη ότι αυτό ξεκινά την προτροπή στον τρέχοντα λογαριασμό χρήστη. Εάν χρειάζεστε μια αυξημένη προτροπή, για παράδειγμα για να επεξεργαστείτε τις χρονικές σημάνσεις αρχείων των φακέλων στους οποίους ο χρήστης έχει περιορισμένη πρόσβαση, κρατήστε πατημένο το πλήκτρο Shift και το πλήκτρο Ctrl.
Οι τρεις εντολές που χρειάζεστε είναι οι ακόλουθες:
- $ (Get-Item FILENAME.EXT) .creationtime = $ (DATE)
- $ (Get-Item FILENAME.EXT) .lastaccesstime = $ (DATE)
- $ (Get-Item FILENAME.EXT) .lastwritetime = $ (DATE)
Οι τρεις εντολές αλλάζουν τη χρονική σήμανση δημιουργίας, τελευταίας πρόσβασης και τελευταίας εγγραφής του αρχείου όταν τις εκτελείτε.
Σημείωση : Ο τελευταίος χρόνος πρόσβασης δεν είναι ενεργοποιημένος από προεπιλογή σε όλες τις υποστηριζόμενες εκδόσεις των Windows λόγω ανησυχιών σχετικά με την απόδοση.
Για να σας δώσω μερικά παραδείγματα:
- $ (Get-Item test.txt) .creationtime = $ (Get-Date)
- $ (Get-Item test.txt) .lastaccesstime = $ (Get-Date '12 / 24/2011 07:15 am ')
Η πρώτη εντολή ορίζει τη χρονική σήμανση δημιουργίας του αρχείου text.txt στην τρέχουσα ημερομηνία και ώρα. Η δεύτερη εντολή αλλάζει την τελευταία ώρα και ημερομηνία πρόσβασης στις 24 Δεκεμβρίου 2011 στις 7:15 π.μ.
Σημειώστε ότι η εντολή απαιτεί το αρχείο να βρίσκεται στον τρέχοντα κατάλογο της προτροπής PowerShell.
Χρήσιμες εντολές
Κάτι που μπορεί να είναι χρήσιμο είναι να παραθέσετε τις χρονικές σημάνσεις του αρχείου του τρέχοντος φακέλου πριν και μετά την εκτέλεση της εντολής PowerShell. Αυτό διευκολύνει την εύρεση αρχείων που εξακολουθούν να απαιτούν αλλαγή και ελέγξτε αν οι αλλαγές εφαρμόστηκαν σωστά.
Λήψη-ChildItem -force | Επιλογή αντικειμένου, Όνομα, CreationTime, LastAccessTime, LastWriteTime | πόδια
Η εντολή παραθέτει όλα τα αρχεία και τους φακέλους της τρέχουσας διαδρομής και εμφανίζει τον χρόνο δημιουργίας, τον τελευταίο χρόνο πρόσβασης και τον τελευταίο χρόνο εγγραφής κάθε στοιχείου σε έναν πίνακα.
- -force σε αυτό το πλαίσιο περιλαμβάνει κρυμμένα και αρχεία συστήματος στην έξοδο.
- Το ft είναι σύντομο για τον πίνακα μορφής.
Εάν χρειάζεστε απλώς τη χρονική σήμανση δημιουργίας, εκτελέστε Λήψη-ChildItem -force αντι αυτου.
Το παρακάτω σενάριο εκτελεί τη λειτουργία σε όλα τα αρχεία.
$ modifyfiles = Get-ChildItem -force | Πού-Αντικείμενο {! $ _. PSIsContainer}
foreach (αντικείμενο $ σε $ modifyfiles)
{
$ object.CreationTime = ('11/11/2011 12:00:00')
$ object.LastAccessTime = ('11/11/2011 12:00:00')
$ αντικείμενο.LastWritetime = ('11 / 11/2011 12:00:00 ')
}
Απλώς αντιγράψτε και επικολλήστε το και αλλάξτε το σύμφωνα με τις απαιτήσεις σας.
Συμβουλή: Εάν προτιμάτε μια γραφική διεπαφή χρήστη όταν πρόκειται για αλλαγή χρονικών σημείων, ελέγξτε το πρόγραμμα δωρεάν λογισμικού Attribute Changer αντι αυτου.