Verzeichnisbaum über Nacht aktualisieren

German support forum

Moderators: Hacker, Stefan2, white

Schnecke
Junior Member
Junior Member
Posts: 2
Joined: 2005-09-21, 07:49 UTC

Verzeichnisbaum über Nacht aktualisieren

Post by *Schnecke »

Besteht die Möglichkeit dass die Aktualisierung des Verzeichnisbaums automatisch zu einer bestimmten Uhrzeit abläuft?

Die Verzeichnisse sind bei mir sehr umfangreich und benötigen vieeel Zeit wenn man den Verzeichnisbaum aktualisiert.

MfG
Schnecke
Murphy
Member
Member
Posts: 124
Joined: 2005-02-20, 10:26 UTC

Post by *Murphy »

Das könnte man über ein externes Autohotkey-Script erledigen, siehe auch im Wiki:

http://www.ghisler.ch/wiki/index.php/Send_a_command_to_Total_Commander

Grüße,
Murphy
User avatar
Sheepdog
Power Member
Power Member
Posts: 5150
Joined: 2003-12-18, 21:44 UTC
Location: Berlin, Germany
Contact:

Post by *Sheepdog »

Hallo Schnecke, ich habe da mal ein Atohotkey-script entworfen, dass Du im Taskplaner aufrufen kannst.

Du musst halt nur vorher Autohotkey installieren, damit bei Aufruf des *.ahk auch das Script von Autohotkey ausgeführt wird.

Hoffe, dass Du des englischen mächtig bist, ansonsten gibt es folgt demnächst die Übersetzung im deutschen WIKI.

sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Schnecke
Junior Member
Junior Member
Posts: 2
Joined: 2005-09-21, 07:49 UTC

Post by *Schnecke »

Hat super funktioniert!!!

Vielen Dank
Schnecke
User avatar
Sheepdog
Power Member
Power Member
Posts: 5150
Joined: 2003-12-18, 21:44 UTC
Location: Berlin, Germany
Contact:

Post by *Sheepdog »

Ah, hast Du gleich heute Nacht ausprobiert, ja? ;) :lol:

Freut mich.

sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
cptpicard
Junior Member
Junior Member
Posts: 31
Joined: 2005-08-25, 17:58 UTC

Post by *cptpicard »

Als Alternative zum Autohotkey das Ganze als Visual Basic Script für das Windows Scripting Host. Code ist nicht sehr sauber, aber läuft ^^

Es wird angenommen, dass die Datei treeinfo.wc immer in der Root des entsprechenden Laufwerks ist.

So bietet es sich zum Beispiel auf Windows-Servern an, die selber kein TC installiert haben, bzw. wo es dem Admin zu heikel ist, so etwas wie Autohotkey auf dem Server zu installieren.

Viel Spaß damit.

Aufruf per Task-Planer:

cscript treeinfo.vbs [Laufwerk] [Pfadtiefe] //T:[Sekunden]

Es kann auch wscript verwendet werden (dann ist gar kein Fenster zu sehen......)

Beispiel:
cscript treeinfo.vbs d 5 //T:120

Code: Select all

'Erstellen einer TC-treeinfo-Datei per WSH
Option Explicit

Dim fso 
Set fso = CreateObject("Scripting.FileSystemObject")

Dim vol, tcfile, depth, ts

Main()

Sub Main()
dim objArgs
Set objArgs = Wscript.Arguments

vol = objArgs(0)
depth = Clng(objArgs(1))
tcfile = vol & ":\treeinfo.wc"

If fso.FileExists(tcfile) Then
    fso.DeleteFile tcfile, True
end if

Set ts = fso.CreateTextFile(tcfile, True)

ReadFolders "", 1

ts.Close

Set tcfile = fso.GetFile(tcfile)
tcfile.Attributes = 2
End Sub

Sub ReadFolders(Entry,ByVal z)
If z > depth AND depth > 0 Then
    Exit Sub
End If

z = z + 1

Dim folders, folder

If Entry = "" Then
    Set folders = fso.GetFolder(vol & ":\")
Else
    Set folders = fso.GetFolder(Entry)
End If

Set folder = folders.SubFolders

For Each folder In folders.SubFolders
    ts.WriteLine "[" & Mid(folder.Path, 4) & "]"
    ReadFolders folder.Path, z
Next
End Sub
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

2cptpicard
Seh ich es richtig, du erstellst die treeinfo datei selber? Nicht schlecht, interessante idee!
I switched to Linux, bye and thanks for all the fish!
cptpicard
Junior Member
Junior Member
Posts: 31
Joined: 2005-08-25, 17:58 UTC

Post by *cptpicard »

Ja, selber. Deswegen wird auch nicht der Speicherort aus der wincmd.ini übernommen.

Dafür gibt es aber die Einstellung "Verzeichnistiefe" als Feature.
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

Dafür gibt es aber die Einstellung "Verzeichnistiefe" als Feature.
Ich erirnnere mich, jemand hat danach hier im forum gefragt. Wir konnten keine antwort geben IIRC, nun sollte er jetzt hier mitlesen ;-)
Wenn ich den thread finde, werde diesen thread dorthin posten.
I switched to Linux, bye and thanks for all the fish!
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

I switched to Linux, bye and thanks for all the fish!
User avatar
Peter
Power Member
Power Member
Posts: 2068
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Abschlussfrage

Post by *Peter »

cptpicard wrote:...Es wird angenommen, dass die Datei treeinfo.wc immer in der Root des entsprechenden Laufwerks ist.

...

Aufruf per Task-Planer:

cscript treeinfo.vbs [Laufwerk] [Pfadtiefe] //T:[Sekunden]

Es kann auch wscript verwendet werden (dann ist gar kein Fenster zu sehen......)

Beispiel:
cscript treeinfo.vbs d 5 //T:120
Frage eines Scriptlaien: wofür ist das //T:120 gut? Kann ich es weglassen? Was passiert bei kleineren Werten, was bei grösseren?`

Danke im Voraus

Peter
TC 10.xx / #266191
Win 10 x64
User avatar
Clas Hortien
Senior Member
Senior Member
Posts: 200
Joined: 2003-03-03, 15:03 UTC

Post by *Clas Hortien »

//T:xxx gibt den Timeout in Sekunden an, die das Script laufen darf, bevor es vom cscript gestoppt wird.
Kleinere Werte führen zu früheren Abbruch.
Wenn kein //T angegeben wird, läuft das Script solange, bis es fertig ist (Endlosschleifen dauern meist ein wenig länger ;-))
#14041
cptpicard
Junior Member
Junior Member
Posts: 31
Joined: 2005-08-25, 17:58 UTC

Re: Abschlussfrage

Post by *cptpicard »

Peter wrote:Frage eines Scriptlaien: wofür ist das //T:120 gut? Kann ich es weglassen?
Du kannst es selbstverständlich weglassen.

Ich habe es nur deshalb mit 120 Sekunden gesetzt, weil auf einem ordentlich abgesicherten Rechner der mit dem IExplorer surft ein generelles Skript-Timeout von 10 Sekunden oder kürzer gesetzt ist. Die Laufzeit dürfte für eine normal gefüllte Festplatte oder ein Netzlaufwerk nicht ausreichen.

Zum Prüfen einfach Wscript per Kommandozeile starten. Dort steht, ob das globale Skript-Timeout konfiguriert ist.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Habe eine weitere Lösung hinzugefügt für Leute, die auch während des Betriebs mal eben alles aktualisieren möchten, ausgelöst per Hotkey:
http://www.ghisler.ch/wiki/index.php/AutoHotkey:_Refresh_the_treeinfo.wc_of_certain_drives#Refresh_treeinfo_files_by_hotkey

@Sheepdog:
Danke für Deinen Grundentwurf! Ich habe den Code entschlackt mittels Loop-Kommando, damit es etwas übersichtlicher wird. ;)

Icfu
This account is for sale
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6981
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Post by *Horst.Epp »

cptpicard wrote:Als Alternative zum Autohotkey das Ganze als Visual Basic Script für das Windows Scripting Host. Code ist nicht sehr sauber, aber läuft ^^

Es wird angenommen, dass die Datei treeinfo.wc immer in der Root des entsprechenden Laufwerks ist.

So bietet es sich zum Beispiel auf Windows-Servern an, die selber kein TC installiert haben, bzw. wo es dem Admin zu heikel ist, so etwas wie Autohotkey auf dem Server zu installieren.


[/code]
Man muss Autohotkey nicht installieren !
Es ist ein Compiler dabei, der das ganze zur selbststaendigen EXE File macht.
Post Reply