Autor |
Beitrag |
GuaAck
      
Beiträge: 378
Erhaltene Danke: 32
Windows 8.1
Delphi 10.4 Comm. Edition
|
Verfasst: So 30.12.12 19:39
Hallo,
ich habe ein Problem mit einem Programm, das man aus der Kommandozeile mit mehreren Dateinamen als Parameter aufruft. In einem Beispiel steht bei einigen Dateien ein "@" vor dem Laufwerksbuchstaben "C", bei anderen nicht. Was bedeutet das "@" an der Stelle? Bei Google habe ich wohl nicht die richtige Frage gestellt, jedenfalls habe ich nichts gefunden.
Hat jemand einen Tipp?
Gruß
GuaAck
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: So 30.12.12 20:21
Das wird wohl von dem Programm selbst abhängen. Um welches Programm handelt es sich denn? Poste doch mal die Beispiele, die Du ansprichst.
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: So 30.12.12 20:25
GuaAck hat folgendes geschrieben : | Hat jemand einen Tipp? |
Ja. Verrate uns doch mal, was es denn für ein Befehl ist
Ansonsten gilt wie immer: frag das Programm!
Ich hab grad nix besseres gefunden als ausgerechnet das Borland-Grep mit seiner unsäglich kaputten Optionsverarbeitung:
Quelltext 1: 2: 3:
| >grep ? Turbo GREP 5.5 Copyright (c) 1992, 1999 Inprise Corporation Syntax: GREP [-rlcnvidzuwo] searchstring file[s] or @filelist |
Zitat: | file[s] or @filelist |  Das ist auch die übliche (DOS-)Konvention: wenn ein Dateiname mit @ anfängt wird er als Dateiliste interpretiert. In dieser Datei stehen dann Zeilenweise die eigentlich gemeinten.
Aber ohne mehr Info kann natürlich keiner sagen ob das bei dir genauso ist.
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
GuaAck 
      
Beiträge: 378
Erhaltene Danke: 32
Windows 8.1
Delphi 10.4 Comm. Edition
|
Verfasst: So 30.12.12 20:56
Entschuldigung, ich dachte, es gäbe da eine allgemeine Konvention, deshalb wollte ich meine Frage nicht zu ausführlich beschreiben.
Es geht um ntbackup, das Standard-Backup-Programm in Windows XP. Dies ist die Befehlszeile, die der Sicherungsassistent erzeugt hat (Was aber aus irgendeinem Grund nicht läuft, in der Ereignisprotokollierung steht, das auf /f ein Dateiname folgen muss. Bevor ich nun lange umständlich probiere, wollte ich zunächst die Syntax verstehen, was mir bis auf das " @" auch gelungen ist.)
C:\windows\system32\ntbackup.exe backup "@C:\windows\Local Settings\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data\Sonntag_1200.bks"
/a /d "Satz am 29.12.2012 um 14:57 erstellt" /v:no /r:no /rs:no /hc:off /m incremental /j "Sonntag_1200" /l:s /Snap:Off
/f "Z:\Backups\D_2012_12_28\D_2012_12_28_full.bkf"
Bei Laufwerk C:\ steht eben das "@", bei Z:\ nicht.
Gruß
GuaAck
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: So 30.12.12 21:02
Wie gesagt, frag das Programm.
Quelltext
Öffnet eine CHM-Seite mit der Beschreibung der Parameter.
Zitat: | @BKS_Dateiname
Gibt den Namen der Sicherungsauswahldatei (BKS-Datei) für den Sicherungsvorgang an. Dem Namen der Sicherungsauswahldatei muss das @-Zeichen vorangestellt werden. Eine Sicherungsauswahldatei enthält Informationen zu den Dateien und Ordnern, die für die Sicherung ausgewählt wurden. Diese Datei muss mit der GUI-Version des Sicherungsdienstprogramms erstellt werden. |
Was dann auch wieder in die Konvention passt. Die @-Datei ist eine Datei mit Dateiverweisen drin.
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Für diesen Beitrag haben gedankt: GuaAck
|
|
papa69
      
Beiträge: 79
Erhaltene Danke: 23
Win 10, Ubuntu
C#, Java, C
|
Verfasst: Mo 31.12.12 07:52
...unter Windows bedeutet das "@"-zeichen eigentlich, dass der Backslash ("/") innerhalb eines Strings auch als solcher gelesen wird...normalerweise müsstest du immer "//" eingeben.
Der Backslash ist (für Windows ???) die Aufforderung, nach einem Steuerzeichen (Escape-Zeichen) zu suchen/handeln...
_________________ Daniel Bauer
... fatal ist nur, wenn sich das Licht am Ende des Tunnels als entgegenkommender ICE entpuppt ...
|
|
Th69
      

Beiträge: 4798
Erhaltene Danke: 1059
Win10
C#, C++ (VS 2017/19/22)
|
Verfasst: Mo 31.12.12 13:28
Hallo papa69,
leider Thema verfehlt
Hier geht es nicht um Quellcode, sondern um Kommandozeilenparameter - und da wurde die Antwort schon genannt.
|
|