Makierte Dateinamen ohne die Erweiterung kopieren

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
Laurin
Member
Member
Posts: 109
Joined: 2007-07-03, 16:33 UTC

Makierte Dateinamen ohne die Erweiterung kopieren

Post by *Laurin »

Hallo
Ich hab schon im Forum nach einer wirklichen Lösung gesucht aber nichts (aktuelles) gefunden.

Ich suche einen Lösung...
Um nur die makirten Dateinamen ohne die Erweiterung in die Zwischenablage zu kopieren?

mit
cm_CopyNamesToClip
ist immer die Erweiterung mit dabei.

Ich brauche aber Ständig die Dateinamen ohne die Erweiterung
weil ich die in eine Liste eintragen muss.
Und da stört die .xdw immer
#33304 Personal license
GRUND REGEL für das aufsetzen eines neuen SYSTEM
1. WINDOWS
2. Total Commander
und dann denn rest
User avatar
HolgerK
Power Member
Power Member
Posts: 5411
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Post by *HolgerK »

Addon "Lst2Clip - copy user defined paths to the clipboard"

Download (totalcmd.net)


Runterladen, installieren und etwas in der Hilfe im Installationsverzeichnis stöbern:
liesmich.htm wrote:Keine Erweiterung

/NE (no extension) Hierbei wird die Dateierweiterung nicht mitkopiert.
HTH
Holger
Laurin
Member
Member
Posts: 109
Joined: 2007-07-03, 16:33 UTC

Post by *Laurin »

Danke das klapt..

Nur ist immer eine Unerwünschte Leerzeile am ende der Tabelle

daten6444
daten6445
daten6446
daten6447
daten6448
daten6449
daten6450
daten6451
daten6452
>> hier ist die Unerwünschte Leerzeile


Beim TC
cm_CopyNamesToClip

ist keine Unerwünschte Leerzeile vorhanden, aber halt die extensionen
#33304 Personal license
GRUND REGEL für das aufsetzen eines neuen SYSTEM
1. WINDOWS
2. Total Commander
und dann denn rest
User avatar
Stefan2
Power Member
Power Member
Posts: 4281
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Kopiere Namen ohne Erweiterung in Zwischenabl. Clipboard

Post by *Stefan2 »

Versuche mal pures "DOS"

Für eine Art "cm_CopyNamesWithoutExtensionsToClip"

erstelle einen Button, mit

Befehl: cmd /c
Parameter: DEL %%tmp%%\x && FOR /F "tokens=*" %%A in ('type %F') DO @ECHO %%~nA >> %%tmp%%\x && type %%tmp%%\x |clip


- wähle einige Dateien aus
- klicke auf den Button

Anstelle eines Buttons kann du diese Befehle auch in die usercmd.ini schreiben und dann diesem em_Befehl eine Tastenkombination zuweisen.



 
User avatar
HolgerK
Power Member
Power Member
Posts: 5411
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Post by *HolgerK »

Laurin wrote:Nur ist immer eine Unerwünschte Leerzeile am ende der Tabelle
Hmh, die befindet sich bereits in der vom TC mit %L,%F ... erzeugten Listendatei.

Könnte ein Versehen im TC-Code beim Erzeugen der temporären Datei sein.

@ghisler(Author)
Notwendig ist das eigentlich nicht. Oder?

Gruss
Holger
User avatar
Stefan2
Power Member
Power Member
Posts: 4281
Joined: 2007-09-13, 22:20 UTC
Location: Europa

VBScript: _ForEachSelFileDo_ Copy Without Extension.vbs

Post by *Stefan2 »

Laurin wrote:Danke das klapt..

Nur ist immer eine Unerwünschte Leerzeile am ende der Tabelle

Ich habe die mit DOS und SED nicht weggebracht.

Deshalb hier ein VB-Script.

_ForEachSelFileDo_CopyWithoutExtension.vbs

Code: Select all

On Error Resume Next
If Wscript.arguments.Count < 1 Then MsgBox "Parameter missed.",,"TC script error" : Help : WScript.Quit
'/////////////////////////////////////////////////////////////////////////////////////// Script Information:
'//   VB-Script for Total Commander.
'//   Name   :   _ForEachSelFileDo_CopyWithoutExtension.vbs
'//   Author :   Stefan, 2016-02-04, v00.1
'//   Purpose:   Copy selected files to clipboard without the extension.
'//                Some kind of 'cm_CopyNamesWithoutExtensionsToClip' command.
'//   
'//   To use, create an button or user defined command (usercmd.ini)
'//   Command:     "D:\rive\path\to\this.vbs"  or best "%Commander_Path%\Tools\Scripts\this.vbs"
'//   Parameter:   "%L"
'//                (Use the quotes as shown too for both cmd and param! In button dialog press F1-key to read more)
'//   Startpath:   <empty>
'//   Icon:        e.g. "%Commander_Path%\WCMICONS.DLL"
'//   Tooltip:     e.g.: _ForEachSelFileDo_ Copy Without Extension To Clipboard
'/////////////////////////////////////////////////////////////////////////////////////// THE CODE:
sTCtempList = Wscript.arguments.Item(0) ' The TC temp file due to the "%L"-parameter.
Set FSO = CreateObject("Scripting.FileSystemObject")
If  FSO.FileExists(sTCtempList) Then
    Const FORREADING = 1
    iFileCount = 0
    Set oTextStream = FSO.OpenTextFile(sTCtempList,FORREADING)
    Do Until oTextStream.AtEndOfStream
        iFileCount = iFileCount + 1
        sFullName = oTextStream.ReadLine		'//Ex: "X:\Backup\File.txt"
        Set oItem = FSO.GetFile(sFullName)
        If(Right(sFullName,1)= "") Then Set oItem = FSO.GetFolder(sFullName)
        sName   = FSO.GetFileName(oItem)		'//Ex: "File.txt"
        sBase   = FSO.GetBaseName(oItem)		'//Ex: "File"
        sExte   = FSO.GetExtensionName(oItem)	'//Ex: "txt"
        '//The purpose of this script (do work here):
        If(sBase<>"") Then sOUT = sOUT & sBase & vbCRLF
    Loop
    oTextStream.Close
Else
    MsgBox "Input file sTCtempList not found.",,"Total Commander Script - ERROR" : Help
End If
'//The trick: removing trailing new line char on ourself:
sOUT = Left(sOUT, Len(sOUT)-2)
ClipboardSET sOUT
'/////////////////////////////////////////////////////////////////////////////////////// HELPER:
Function ClipboardSET(sText)
	On Error Resume Next
	Dim objIE : Set objIE = CreateObject("InternetExplorer.Application")
	objIE.Navigate("about:blank")
	objIE.document.parentwindow.clipboardData.SetData "text", sText
	objIE.Quit
	Set objIE = Nothing
End Function 'ClipboardSET
Function Help
    M = M & "VB-Script for Total Commander." & vbCR & vbCR
    M = M & "Name  :"  &vbTab&   "_ForEachSelFileDo_CopyWithoutExtension.vbs"              & vbCR
    M = M & "Author:"  &vbTab&   "Stefan, 2016-02-04, v00.1"                               & vbCR
    M = M & "Purpose:" &vbTab&   "Copy selected files to clipboard without the extension." & vbCR
    M = M & "Some kind of 'cm_CopyNamesWithoutExtensionsToClip' command." & vbCR
    M = M & "To use, create an button or user defined command (usercmd.ini)" & vbCR & vbCR
    M = M & "Command:   ""D:\rive\path\to\this.vbs"" " & vbCR
    M = M & vbTab&vbTab & " or best ""%Commander_Path%\Tools\Scripts\this.vbs"" " & vbCR & vbCR
    M = M & "Parameter:   ""%L"" " & vbTab & "(Use the quotes as shown too for both cmd and param!)" & vbCR & vbCR
    M = M & "Startpath: <empty>" & vbCR
    M = M & "Icon: e.g. ""%Commander_Path%\WCMICONS.DLL"" " & vbCR
    M = M & "Tooltip: e.g.: _ForEachSelFileDo_ Copy Without Extension To Clipboard" & vbCR
    MsgBox M,,"Total Commander Script - Help"
End Function 'Help
'/////////////////////////////////////////////////////////////////////////////////////// THE END



HTH? :D

 
User avatar
Hacker
Moderator
Moderator
Posts: 13142
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Laurin,
Oder ein AutoHotkey Skript. Einfach auf einen Button legen, oder per Tastenkombination aufrufen.

Code: Select all

Clipboard =
PostMessage, 1075, 2017, , , ahk_class TTOTAL_CMD
ClipWait
Clipboard := RegExReplace(Clipboard, "(.*)[\\.].*", "$1")
HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
www_zeeshan_de
Junior Member
Junior Member
Posts: 15
Joined: 2015-10-29, 00:39 UTC
Location: Germany

Re: Makierte Dateinamen ohne die Erweiterung kopieren

Post by *www_zeeshan_de »

Laurin wrote:Hallo
...
Ich brauche aber Ständig die Dateinamen ohne die Erweiterung weil ich die in eine Liste eintragen muss.
Und da stört die
.xdw
immer
1. Dateinamen kopieren ganz normal wie bisher auch
2. notepad++ starten und dort einfügen
3. STRG+H drücken
4. Bei suchen nach
.xdw
eintragen
5. das ersetzen durch feld LEER lassen
6. Alle ersetzen Button drücken, replace Fenster schließen
7. STRG+A drücken, STRG+C drücken
8. in deine Liste einfügen

Es emphielt sich notepad++ für default new document auf UTF-8-BOM unter Optionen einzustellen, um sicherzustellen, dass bei speziellen Zeichen im Dateinamen keine Verluste entstehen.
Das Zielformat deiner Liste sollte auch Unicode sein, wenn erforderlich.
Post Reply