File Attribute setzen
Moderators: Hacker, Stefan2, white
File Attribute setzen
Hallo,
ich muß ziemlich häufig das "read only" Attribut einer Datei setzen und rücksetzen. Rechte Maustaste/Properties/Haken/ok ist mir auf Dauer zu aufwendig. Gibt es eine Möglichkeit, das mit dem Total Commander zu automatisieren? Z.B. ctrl+r oder was ähnliches und dann toggelt er das Attribut. Fänd ich wirklich praktisch.
Vielen Dank,
Michael
ich muß ziemlich häufig das "read only" Attribut einer Datei setzen und rücksetzen. Rechte Maustaste/Properties/Haken/ok ist mir auf Dauer zu aufwendig. Gibt es eine Möglichkeit, das mit dem Total Commander zu automatisieren? Z.B. ctrl+r oder was ähnliches und dann toggelt er das Attribut. Fänd ich wirklich praktisch.
Vielen Dank,
Michael
- SanskritFritz
- Power Member
- Posts: 3693
- Joined: 2003-07-24, 09:25 UTC
- Location: Budapest, Hungary
Ja, im Prinzip schon. Nur geht dann ein Fenster auf, ich muß die Haken setzen und ok drücken. Das ist nicht wirklich einfacher, als über die rechte Maustaste. Ich will einfach z.B. ctrl+r drücken und dann soll das read only flag getoggelt werden. Gibt es sowas?
Und noch eine kleine Frage: wenn ich eine Tastenkombination definiere, wie kann ich denn erkennen ob und mit was die im Moment belegt ist. Wenn ich z.B. ctrl+r eingebe, steht da einfach nur "voreingestellte Definition". Aber was ist denn voreingestellt?
Danke,
Michael
Und noch eine kleine Frage: wenn ich eine Tastenkombination definiere, wie kann ich denn erkennen ob und mit was die im Moment belegt ist. Wenn ich z.B. ctrl+r eingebe, steht da einfach nur "voreingestellte Definition". Aber was ist denn voreingestellt?
Danke,
Michael
Danke Leif,
hätte ich selbst drauf kommen können, weil ich die Tastenkombination selber immer wieder benutze. Kleiner blackout
Meine Frage war aber allgemeiner. Wie kann ich für jede andere Tastenkombination prüfen, was dahintersteckt? Auch bei Total-Commander eigenen Tastenkombinationen, wie z.B. Ctrl+M zeigt er es nicht an.
Schönen Gruß,
Michael
hätte ich selbst drauf kommen können, weil ich die Tastenkombination selber immer wieder benutze. Kleiner blackout

Meine Frage war aber allgemeiner. Wie kann ich für jede andere Tastenkombination prüfen, was dahintersteckt? Auch bei Total-Commander eigenen Tastenkombinationen, wie z.B. Ctrl+M zeigt er es nicht an.
Schönen Gruß,
Michael
- SanskritFritz
- Power Member
- Posts: 3693
- Joined: 2003-07-24, 09:25 UTC
- Location: Budapest, Hungary
Ja, das kannst du nicht, nur mittels Hilfe, da gibt es eine liste der tastenkombinationen.Wie kann ich für jede andere Tastenkombination prüfen, was dahintersteckt?
Zur ursprünglichen frage:
Interner kommando gibt es nur den cm_SetAttrib, das ist ja dein bekannter dialog. Was du willst, benötigt neue kommandos, wie zb cm_SetReadOnly oder cm_ToggleReadOnly. Vielleicht hilft noch Aezay's TC scripter.
I switched to Linux, bye and thanks for all the fish!
Also toggeln kannst Du das bit wohl nicht, aber zum setzen oder löschen sollte es eine batch tun. Willst Du nur eine oder mehrere Dateien auf einmal umstellen?
sheepdog
sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Erstelle Dir einen Button:
Kommando: attrib
Parameter: %n -r
Icondatei: %Commander_path%\Totalcmd.exe,14
und einen zweiten
Kommando: attrib
Parameter: %n +r
Icondatei: %Commander_path%\Totalcmd.exe,9
Als Icon kannst Du natürlich auch was anderes nehmen.
sheepdog
Kommando: attrib
Parameter: %n -r
Icondatei: %Commander_path%\Totalcmd.exe,14
und einen zweiten
Kommando: attrib
Parameter: %n +r
Icondatei: %Commander_path%\Totalcmd.exe,9
Als Icon kannst Du natürlich auch was anderes nehmen.
sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Wenn Du das Tool Lst2Multi benutzt, dann kannst Du bei den ausgewählten Dateien in einem Rutsch die Attribute ändern:
Erstelle Dir einen Button:
Kommando: lst2mlt.exe | hier evtl. den Pfad zum Programm hinzufügen
Parameter: /X:attrib.exe /L:%L /E:-r
Icondatei: %Commander_path%\Totalcmd.exe,14
und einen zweiten
Kommando: lst2mlt.exe | hier evtl. den Pfad zum Programm hinzufügen
Parameter: /X:attrib.exe /L:%L /E:+r
Icondatei: %Commander_path%\Totalcmd.exe,9
sheepdog
Erstelle Dir einen Button:
Kommando: lst2mlt.exe | hier evtl. den Pfad zum Programm hinzufügen
Parameter: /X:attrib.exe /L:%L /E:-r
Icondatei: %Commander_path%\Totalcmd.exe,14
und einen zweiten
Kommando: lst2mlt.exe | hier evtl. den Pfad zum Programm hinzufügen
Parameter: /X:attrib.exe /L:%L /E:+r
Icondatei: %Commander_path%\Totalcmd.exe,9
sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Ich denke nicht, Du wolltest doch mit einem Klick umschalten oder ? Außerdem bekommst Du mit diesem Button keine versteckten/Systemdateien umgeschaltet.MichaelK wrote:Damit habe ich nun genau das, was ich gesucht habe.
Ich habe jetzt dafür eine Batchdatei geschrieben.
Code: Select all
@echo off
rem Dateien readonly-flag löschen
for /f "tokens=1,2,3,4,5 " %%i in ('attrib %1') do if /i "%%i"=="R" (@echo attrib %1 -r>>%1r-.bat) else if /i "%%i"=="HR" (@echo attrib %1 -h -r>>%1r-.bat) else if /i "%%i"=="SHR" (@echo attrib %1 -s -h -r>>%1r-.bat) else if /i "%%i"=="S" (if "%%j"=="R" (@echo attrib %1 -s -r>>%1r-.bat)) else if /i "%%i"=="A" if /i "%%j"=="R" (@echo attrib %1 -r>>%1r-.bat) else if /i "%%j"=="HR" (@echo attrib %1 -h -r>>%1r-.bat) else if /i "%%j"=="SHR" (@echo attrib %1 -s -h -r>>%1r-.bat) else if /i "%%j"=="S" if "%%k"=="R" (@echo attrib %1 -s -r>>%1r-.bat)
rem Wenn kein Readonly-Flag zu löschen ist, muss auch kein SYS bzw Hidden wiederhergestellt werden
if not exist %1r-.bat goto setzen
rem und die Sys bzw Hidden bits wieder setzen
for /f "tokens=1,2,3,4,5 " %%i in ('attrib %1') do if /i "%%i"=="HR" (@echo attrib %1 +h>>%1r-.bat) else if /i "%%i"=="SHR" (@echo attrib %1 +s +h>>%1r-.bat) else if /i "%%i"=="S" (if "%%j"=="R" (@echo attrib %1 +s>>%1r-.bat)) else if /i "%%i"=="A" if /i "%%j"=="HR" (@echo attrib %1 +h>>%1r-.bat) else if /i "%%j"=="SHR" (@echo attrib %1 +s +h>>%1r-.bat) else if /i "%%j"=="S" if "%%k"=="R" (@echo attrib %1 +s>>%1r-.bat)
rem Wenn ein RO-Flag gelöscht wird, dann muss man nicht prüfen, ob eins gesetzt werden muß (die Batch wird ja für jede Datei einzeln aufgerufen)
if exist %1r-.bat goto ändern
:setzen
rem Dateien Readonly flag setzen
for /f "tokens=1,2,3,4,5 " %%i in ('attrib %1') do if /i "%%i" NEQ "R" if /i "%%i" NEQ "HR" if /i "%%i" NEQ "SHR" if /i "%%j" NEQ "R" if /i "%%j" NEQ "HR" if /i "%%j" NEQ "SHR" if /i "%%k" NEQ "R" (@echo attrib %1 -s -h +r>>%1r-.bat)
rem Und system und hidden wiederherstellen
for /f "tokens=1,2,3,4,5 " %%i in ('attrib %1') do if /i "%%i"=="H" (@echo attrib %1 +h>>%1r-.bat) else if /i "%%i"=="SH" (@echo attrib %1 +s +h>>%1r-.bat) else if /i "%%i"=="S" (@echo attrib %1 +s>>%1r-.bat) else if /i "%%j"=="H" (@echo attrib %1 +h>>%1r-.bat) else if /i "%%j"=="SH" (@echo attrib %1 +s +h>>%1r-.bat) else if /i "%%j"=="S" (@echo attrib %1 +s>>%1r-.bat)
:ändern
call %1r-.bat
del %1r-.bat
Das einzige was mich stört, sind die DOS-Fenster, die dann immer auf und zugehen. Aber da weiss ich leider nicht, was man dagegen tun kann.
Wenns Dich zu sehr stört, musst Du halt mit der 2 Button-Lösung leben.
sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams