Unterstrich den Ordnername hinzufügen / entfernen?

  • Hallo Leute,

    ich habe zwei AU3-Dateien, mit den ich die Ordner die mit "Logotec" anfängen und unter C:\Programme liegen, am Ende ein Unterstich "_" in der Name hinzufüge bzw. entferne.

    Zwei Fragen habe ich:
    1. Was muss in der erste Datei geändert werden, damit nur dann ein Unterstrich hinzufügt wird, wenn dieser am Ende nicht existiert.
    2. Was muss in der zweite Datei geändert werden, damit nur dann ein Unterstrich entfernt wird, wenn dieser am Ende existiert.

    [autoit]


    ;~ ###############################################################################
    ;~ Bei allen Ordner unter C:\Programme\ die mit "Logotec" anfangen wird am Ende
    ;~ ein Unterstich "_" in der Name hinzufügt
    ;~ ###############################################################################

    [/autoit][autoit][/autoit][autoit]

    #include <File.au3>
    $Dir = "C:\Programme"
    $Files = _FileListToArray($Dir)
    For $i = 1 To UBound($Files) - 1
    If StringLeft($Files[$i], 7) = "Logotec" Then DirMove($Dir & "\" & $Files[$i], $Dir & "\" & $Files[$i] & "_")
    Next

    [/autoit][autoit]

    ;~ ###############################################################################
    ;~ Bei allen Ordner unter C:\Programme\ die mit "Logotec" anfangen wird am Ende
    ;~ der Unterstich "_" in der Name entfernt
    ;~ ###############################################################################
    #include <File.au3>
    #include <Array.au3>
    $Path = 'C:\Programme\'
    $FileList = _FileListToArray($Path, 'Logotec*', 2)
    If Not IsArray($FileList) Then Exit MsgBox(0, '', 'Keine Verzeichnisse gefunden!')
    For $i = 1 To $FileList[0]
    $ret = DirMove($Path & $FileList[$i], $Path & StringTrimRight($FileList[$i], 1))
    If $ret = 0 Then MsgBox(0, '', 'Konnte das Verzeichnis: ' & $Path & $FileList[$i] & ' nicht umbenennen!')
    Next

    [/autoit]

    Besten Dank im Voraus !

    Viele Grüße,
    Dino

    Einmal editiert, zuletzt von Dino (8. Dezember 2008 um 10:41)

    • Offizieller Beitrag

    Frage 1:

    [autoit]


    If StringLeft($Files[$i], 7) = "Logotec" And StringRight($Files[$i], 1) <> '_' Then DirMove($Dir & "\" & $Files[$i], $Dir & "\" & $Files[$i] & "_")

    [/autoit]

    Frage 2:

    [autoit]


    If StringRight($FileList[$i], 1) = '_' Then $ret = DirMove($Path & $FileList[$i], $Path & StringTrimRight($FileList[$i], 1))

    [/autoit]