Tech- & FAQ-Forum

Zurück   CC-Community Board > CC-CB Hauptforen > Tech & FAQ Forum

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 16.09.2011, 08:50   #1
spider-man
Oldie
 
Benutzerbild von spider-man
 
Registriert seit: 07.06.2002
Beiträge: 817
Standard DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Ich möchte mir unter Win7 einen DOS-Befehl im Explorer-Kontextmenü auf Ordner einen DOS Befehl legen.

Im Speziellen ist das "attrib -a /s"
(Archivattribute löschen)

Ich weiss, das ich einen Schlüssel in folgendem Registryzweig anlegen muss:

HKEY_CLASSES_ROOT\Directory\shell

Aber wie muss die Syntax aussehen?

Ich habe "attrib -a /s %1" ausprobiert. Geht nicht.
"attrib -a /s *.*" funktioniert auch nicht.

Es öffnet sich zwar eine "DOS-Box", die sich aber sofort wieder schliesst.
Die Archiv-Attribute sind aber alle noch da.

Weiss jemand, wie ich das machen kann, das ich auf der rechten Maustaste auf Ordnern, mir einen Befehl machen kann, der alle Archiv-Attribute in diesem- und allen Unterordnern löscht?
__________________
Schöne Grüsse
spider-man
spider-man.2000@gmx.de

Geändert von spider-man (16.09.2011 um 10:31 Uhr)
spider-man ist offline   Mit Zitat antworten
Alt 16.09.2011, 09:21   #2
DetLife
Patriarch
 
Registriert seit: 02.05.2001
Beiträge: 6.143
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

ATTRIB ist kein DOS-Befehl, sondern eine Funktion des Windows-Kommando-Interpreters CMD, der mit DOS nicht das geringste zu tun hat.

Deswegen schreibst Du Deinen Befehl am am besten in eine .CMD-Datei, die am Ende mit einem PAUSE-Befehl abschließt. Dann siehst Du auch, was ggf. schiefgeht. Die .CMD-Datei kannst Du dann über die Registry einbinden.
DetLife ist offline   Mit Zitat antworten
Folgende 2 Benutzer sagen Danke zu DetLife für den nützlichen Beitrag:
Alt 16.09.2011, 09:59   #3
boubou
dtsch. Bubu
 
Benutzerbild von boubou
 
Registriert seit: 30.08.2001
Beiträge: 1.887
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

ein Workaround ist sicherlich die Benutzung von feinen Programmen die dabei noch mehr Flexibilität bieten. früher habe ich Attribute Changer genommen, das sich auch ins Explorer Kontextmenü einnistet.
Heutzutage mache ich alles mit meinem Dateimanager bei dem man frei entscheiden kann WIE man folgenden Dialog aufruft:


Unabhängig vom obigen Dopus dialogue (Programm Modul), Dopus ermöglicht natürlich auch EXAKT DAS WAS du erwünschst: einen Eintrag im Rechtsklick Kontextmenü des Dateimanagers (hier: Dopus) der SOFORT den Befehl "attrib -a /s" (oder irgendeinen anderen DOS oder CMD oder DOPUS Befehl oder gar vollständige Skripte mit Funktionsaufrufen!) auf die selektierten Elemente (Dateien + Ordner + Subfolders) ausführt. Der Dopusbefehl hierzu würde ungefähr so lauten, ganz primitiv:
Code:
attrib -a /s {source$}
Folgender "Button" könnte z.B. auch als Rechtsklick Befehl (anstelle des Buttons!) hinzugefügt werden:
Spoiler:
Code:
    <?xml version="1.0"?>
    <button backcol="none" display="both" label_pos="right" textcol="none">
       <label>Swap Names</label>
       <icon1>#rename</icon1>
       <function type="normal">
          <instruction>Rename PATTERN * TO *</instruction>
          <instruction>@script vbscript</instruction>
          <instruction />
          <instruction>Option Explicit</instruction>
          <instruction />
          <instruction>Dim strPrevName, strTempName</instruction>
          <instruction>Randomize()</instruction>
          <instruction />
          <instruction>Function Rename_GetNewName ( strFileName, strFilePath, _</instruction>
          <instruction>      fIsFolder, strOldName, ByRef strNewName )</instruction>
          <instruction />
          <instruction>   &apos; for the first file of every pair, save the old file and then rename with a random suffix</instruction>
          <instruction>   if Len(strPrevName) = 0 Then</instruction>
          <instruction>      strPrevName = strFileName</instruction>
          <instruction>      strTempName = strNewName &amp; &quot;-temp&quot; &amp; Int(10000 * rnd())</instruction>
          <instruction>   else</instruction>
          <instruction>      Dim oldPath, newPath</instruction>
          <instruction>      Dim fs</instruction>
          <instruction>      Set fs = CreateObject(&quot;Scripting.FileSystemObject&quot;)</instruction>
          <instruction />
          <instruction>      &apos; rename the first file to a temporary name</instruction>
          <instruction>      oldPath = fs.BuildPath(strFilePath, strPrevName)</instruction>
          <instruction>      newPath = fs.BuildPath(strFilePath, strTempName)</instruction>
          <instruction>      fs.MoveFile oldPath, newPath</instruction>
          <instruction />
          <instruction>      &apos; rename the second file to the first file&apos;s name</instruction>
          <instruction>      oldPath = fs.BuildPath(strFilePath, strFileName)</instruction>
          <instruction>      newPath = fs.BuildPath(strFilePath, strPrevName)</instruction>
          <instruction>      fs.MoveFile oldPath, newPath</instruction>
          <instruction />
          <instruction>      &apos; rename the first file to the second file&apos;s name</instruction>
          <instruction>      oldPath = fs.BuildPath(strFilePath, strTempName)</instruction>
          <instruction>      newPath = fs.BuildPath(strFilePath, strFileName)</instruction>
          <instruction>      fs.MoveFile oldPath, newPath</instruction>
          <instruction>      </instruction>
          <instruction>      Set fs = Nothing</instruction>
          <instruction>      strPrevName = &quot;&quot; &apos; reset for next file</instruction>
          <instruction>   end if</instruction>
          <instruction>   strNewName = strFileName &apos; nop - rename is handled by the FileSystemObject</instruction>
          <instruction>      </instruction>
          <instruction>End Function</instruction>
       </function>
    </button>


Er bewirkt dass zwei markierte Dateien ihre jeweiligen vollständigen Dateinamen wechseln: aus IchHeisseManta.txt, DuBistCola.pdf würde dann DuBistCola.pdf und IchHeisseManta.txt werden

Dass das alles auch mit Windows Explorer geht, keine Frage. Nur umständlicher..
boubou ist offline   Mit Zitat antworten
Folgende 2 Benutzer sagen Danke zu boubou für den nützlichen Beitrag:
Alt 16.09.2011, 10:29   #4
spider-man
Oldie
 
Benutzerbild von spider-man
 
Registriert seit: 07.06.2002
Beiträge: 817
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Danke DetLife, Du hast mir mit PAUSE auf die Sprünge geholfen.

Ich habe die Lösung gefunden: (Ich hatte bei dem CD in der Batch das /D vergessen)

Zuerst das REG-File:
Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\ArchivAttributeEntfernen]
@="Archiv-Attribute entfernen"

[HKEY_CLASSES_ROOT\Directory\shell\ArchivAttributeEntfernen\command]
@="C:\\PfadZurBatch\\ArchivAttributeEntfernen.cmd %1"
Dann die Batch (ArchivAttributeEntfernen.cmd):
Code:
@echo off
cd /D %1
attrib -a /s *.*

Geändert von spider-man (16.09.2011 um 12:35 Uhr)
spider-man ist offline   Mit Zitat antworten
Folgende 3 Benutzer sagen Danke zu spider-man für den nützlichen Beitrag:
Alt 17.09.2011, 01:48   #5
SkAvEnGeR
Master of Tools
 
Benutzerbild von SkAvEnGeR
 
Registriert seit: 21.05.2001
Beiträge: 3.894
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Kligt schon interessant...

aber darf man auch erfahren, welchen Sinn diese Vorgehensweise hat?

Was bringt es dir, dieses Attribut zu löschen?
SkAvEnGeR ist offline   Mit Zitat antworten
Alt 17.09.2011, 07:36   #6
spider-man
Oldie
 
Benutzerbild von spider-man
 
Registriert seit: 07.06.2002
Beiträge: 817
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Ich muss hier in einigen Ordnern erkennen in welcher Datei sich etwas geändert hat.
Das geht auf den ersten Blick am besten, wenn man das Archivattribut beobachtet.
Das Attribut zu löschen ist mit dem Explorer immer Klickarbeit.
Der oben beschriebene Weg ist - denke ich - ohne Third-Party-Tools, einer der schnellsten.
spider-man ist offline   Mit Zitat antworten
Alt 17.09.2011, 09:26   #7
boubou
dtsch. Bubu
 
Benutzerbild von boubou
 
Registriert seit: 30.08.2001
Beiträge: 1.887
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Zitat:
Zitat von spider-man Beitrag anzeigen
Ich muss hier in einigen Ordnern erkennen in welcher Datei sich etwas geändert hat.
hört sich nach power arbeit am PC an bzw. ernstes Dateimanagement. in so einem Fall kommst du nicht an TotalCommander (mit seine plöden Blugins ) vorbei, oder wenn du's etwas hübscher und runder haben möchtest das von mir genannte Dopus.com

bei seriösem Dateimanagement Finger weg von Explorer.exe
boubou ist offline   Mit Zitat antworten
Alt 17.09.2011, 11:11   #8
spider-man
Oldie
 
Benutzerbild von spider-man
 
Registriert seit: 07.06.2002
Beiträge: 817
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Du hast Recht.
Ich habe hier xplorer2, IdoswinPro, TotalCommander und XYplorer.
Alle sagen mir nicht zu.
Mein Lieblingstool ist war der Explorer aus XP.
Leider ist der Explorer unter Win7 eigentlich (trotz ClassicExplorer) unbrauchbar.
Wie gesagt, die o.g. sagen mir irgendwie nicht zu.
Dopus habe ich mir vor einiger Zeit mal angesehen und ich fand das Tool auch recht nett. Allerdings auch den totalen Options-Overkill.
Ich habe nur noch keine Zeit gefunden mich mal richtig damit zu beschäftigen.
Mal sehen.

Geändert von spider-man (17.09.2011 um 12:44 Uhr)
spider-man ist offline   Mit Zitat antworten
Folgender Benutzer sagt Danke zu spider-man für den nützlichen Beitrag:
Alt 17.09.2011, 11:36   #9
boubou
dtsch. Bubu
 
Benutzerbild von boubou
 
Registriert seit: 30.08.2001
Beiträge: 1.887
Standard AW: DOS-Befehl im Explorer (Kontextmenü) auf rechte Maustaste legen?

Zitat:
Zitat von spider-man Beitrag anzeigen
Ich habe hier xplorer2, IdoswinPro, TotalCommander und XYplorer.
oops Dann hast du ja schon die Creme de la creme im Gebrauch. Wenn wir PowerDesk aus einsichtigen Gründen ausser acht lassen, ist meine persönliche Top5 der allerbesten Dateimanager:
#1. Dopus (ein Tool anno 1989!!)
#2. TotalCommander (null fun, anno 1993)
#3. XYplorer (ein Dopus clone, sehr gut gelungenes Produkt)
#4. xplorer2 (ein weiterer Clone. schon merklich schwächer)
#5. Q-Dir (ein schlanker der komplett auf die explorer.exe Engine basiert!!)

Bei mir zum Einsatz kommen hauptsächlich #1. Selten explorer.exe (eben dann, wenn #1 einen Ausfall feiert lol) und gaanz selten nur noch #5. #2 schadet nicht (small fingerprint) und werfe ich ab und zu zur aufheiternden Belustigung an . #3 und #4 sind heruntergeschmissen, Clones nein danke.

hope this helpz!
boubou ist offline   Mit Zitat antworten
Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:13 Uhr.


vBulletin® Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.