Benutzerdefinierte Spalte mit Ja/Nein je nach Textinhalt
Moderators: Hacker, Stefan2, white
Benutzerdefinierte Spalte mit Ja/Nein je nach Textinhalt
Wir haben immer wieder die Suche "Suche die Dateien, in denen 'Test' nicht enthalten ist."
Als Suche ist das ganz klar, aber könnte man das nicht auch als Benutzerdefinierte Spalte mit "Ja/Nein" - Anzeige lösen?
Mit Standardbefehlen?
Mit Script-Plugin? (und Script ...)
gar nicht ..?
Danke
Peter
Als Suche ist das ganz klar, aber könnte man das nicht auch als Benutzerdefinierte Spalte mit "Ja/Nein" - Anzeige lösen?
Mit Standardbefehlen?
Mit Script-Plugin? (und Script ...)
gar nicht ..?
Danke
Peter
TC 10.xx / #266191
Win 10 x64
Win 10 x64
Das geht zB mit regexp_wdx. Ich nehme an "Test" steht im Dateinamen und nicht im Inhalt der Datei.
regexp.ini
Falls im Inhalt gesucht werden soll, ginge dies mit TextSearch
regexp.ini
Code: Select all
[Regexp]
Rule=TestFinden
[TestFinden]
Find="(test)"
Change="TEST-GEFUNDEN"
Substitute=1
Others=0
Doch, es geht um den Dateiinhalt.ZoSTeR wrote:...Ich nehme an "Test" steht im Dateinamen und nicht im Inhalt der Datei....
Das Plugin selbst kenne ich und habe es auch in der Suche eingesetzt. Nur in den Spalten klappt es nicht. Oder muss ich hier mit dem genannten Reg_Ex.wdx verknüpfen?ZoSTeR wrote:...Falls im Inhalt gesucht werden soll, ginge dies mit TextSearch
Peter
TC 10.xx / #266191
Win 10 x64
Win 10 x64
Mit dem "Script Content Plugin 0.2.0.0" ( http://www.totalcmd.net/plugring/script_wdx.html ) ist so etwas möglich. Zum Beispiel etwa so [1]:
Script.ini:
TextIstEnthalten.vbs:
In einer benutzerdefinierten Spalte gibt man dann als Feldinhaltan.
HTH
JOUBE
[1] Die ersten (maximal) 2000 Zeichen von txt-, ini- und cfg-Dateien werden im Beispiel nach dem Vorkommen des Texts 'test' durchsucht.
Script.ini:
Code: Select all
[Script]
Section=TextIstEnthalten
[Defaults]
LongName=1
ParseDirs=0
[TextIstEnthalten]
Script=TextIstEnthalten.vbs
Code: Select all
Dim fso, tf, s
content = " "
Const ForReading = 1
Set fso = CreateObject("Scripting.FileSystemObject")
sExt = lcase(fso.GetExtensionName(filename))
Select Case sExt
Case "txt", "ini", "cfg"
Set tf = fso.OpenTextFile(filename, ForReading)
s = tf.read(2000)
tf.Close
searchtxt = "test"
if InStr(s, searchtxt) > 0 then
content = "Ja"
End if
End Select
set tf=nothing
set fso=nothing
Code: Select all
[=script.Result]
HTH
JOUBE
[1] Die ersten (maximal) 2000 Zeichen von txt-, ini- und cfg-Dateien werden im Beispiel nach dem Vorkommen des Texts 'test' durchsucht.
Last edited by JOUBE on 2011-06-05, 20:49 UTC, edited 2 times in total.
Ja, setze ich schon länger ein.JOUBE wrote:Mit dem "Script Content Plugin 0.2.0.0" ( http://www.totalcmd.net/plugring/script_wdx.html ) ist so etwas möglich. ...
Werde ich morgen testen - vielen Dank.JOUBE wrote:...TextIstEnthalten.vbs:...
Peter
TC 10.xx / #266191
Win 10 x64
Win 10 x64
Klappt bestens, danke. Eine kleine Modifikation habe ich eingebaut - das Wort muss am Zeilenanfang stehen, darum habe ich den Zeilenwechsel mitdefiniert:
Danke nochmals
Peter
Code: Select all
searchtxt = vbCrLf & "test"
Peter
TC 10.xx / #266191
Win 10 x64
Win 10 x64
So darf es dann aber nicht das erste Wort in der Datei sein, aber das ist ja klar. Vermutlich/hoffentlich/sicher sind auch die anderen Einschränkungen im Script (nur innerhalb der ersten 2000 Zeichen in jeder Datei wird gesucht, die Suche beschränkt sich auf die Dateien mit den in der Liste aufgeführten Erweiterungen) den speziellen Erfordernissen angepasst worden.Peter wrote:Eine kleine Modifikation habe ich eingebaut - das Wort muss am Zeilenanfang stehen, darum habe ich den Zeilenwechsel mitdefiniert:Code: Select all
searchtxt = vbCrLf & "test"
JOUBE