Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  findfile ?!?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  findfile ?!? (788 mal gelesen)
benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 19. Mrz. 2003 17:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

ich suche nach einer möglickeit zu überprüfen, ob ein dateiordner (nicht filename !) existiert

z.b.
(setq ORD (strcat (getvar "dwgprefix")"ordnerX"))

ausgabe : "C:\\Projekte.cad\\4393-HHD\\AFU-BAU\\ordnerX"

der ordner existiert !!!

(findfile ORD) <-- gibt nil aus !??!

unterschiedliche schreibweisen auch getestet, wie "/" "\", spielt aber anscheinend keine rolle...

verstehe irgendwie die funktion findfile nicht so richtig...
gebe ich (findfile "c:\\projekte.cad") ein findet findfile es. sobald ich aber (findfile "c:\\projekte.cad\\4393-hhd") eingebe gibt mir findfile ein nil aus.
weiterhin, wenn ich wie in der hilfe beschrieben den ordner "autocad 2000i deu" suchen lasse, findet findfile es wieder...*stirnrunzel*

gibt es eine andere möglichkeit ?


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

wklemens
Mitglied
Systemingenieur


Sehen Sie sich das Profil von wklemens an!   Senden Sie eine Private Message an wklemens  Schreiben Sie einen Gästebucheintrag für wklemens

Beiträge: 383
Registriert: 02.09.2002

erstellt am: 19. Mrz. 2003 19:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

Wie wärs mit :

(vl-directory-files "E:/acad13c4" nil -1)
liefert z.B.
("." ".." "WIN" "COM" "DOS")
oder nil wenn Verzeichnis nicht existiert.


------------------
Grüße aus Linz

Willi Klemens
MCDS Datensystem GmbH

www.mcds.net

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

Autocad 2005-2010
Microstation V8
Photoshop CS4 + Camera Raw
Nikon Capture NX2
Nikon D90

erstellt am: 20. Mrz. 2003 08:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

habe mich wohl zu sehr auf dieses findfile fixiert....
ist eine interessante funktion...

  (if (not (vl-directory-files FOLDER nil -1));_ wenn u-ordner nicht existent
    (progn
      .
      .
      .

danke willi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

wklemens
Mitglied
Systemingenieur


Sehen Sie sich das Profil von wklemens an!   Senden Sie eine Private Message an wklemens  Schreiben Sie einen Gästebucheintrag für wklemens

Beiträge: 383
Registriert: 02.09.2002

erstellt am: 20. Mrz. 2003 13:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

no problem!!

------------------
Grüße aus Linz

Willi Klemens
MCDS Datensystem GmbH

www.mcds.net

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADchup
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von CADchup an!   Senden Sie eine Private Message an CADchup  Schreiben Sie einen Gästebucheintrag für CADchup

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 20. Mrz. 2003 13:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

Hi,

zu (findfile) habe ich just dieser Tage bei www.cadditions.de was geschrieben. Bei den Fehlern. Unten.
Scheint bei Dir genau zu passen.

------------------
www.cadditions.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 20. Mrz. 2003 15:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

findfile ist wohl intern gepuffert. Sehr wahrscheinlich hast du den Ordner erst erzeugt - das kann mit findfile in die Hose gehen, weil es sich nicht aktualisieren lässt. Wenn sich findfile einmal ein Verzeichnis reingezogen hat, kriegt es Änderungen manchmal erst nach einiger Zeit mit.

------------------
Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze
Meine Überzeugung...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 20. Mrz. 2003 15:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

Noch eine Anmerkung:

Was Cadchup zum Thema aktuelles Verzeichnis und findfile geschrieben hat, scheint zu stimmen. Man kann aber auf das Nulldevice testen, dann geht's wieder:

(findfile "<irgendeinverzeichnis>\\nul")

------------------
Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze
Meine Überzeugung...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADchup
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von CADchup an!   Senden Sie eine Private Message an CADchup  Schreiben Sie einen Gästebucheintrag für CADchup

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 20. Mrz. 2003 15:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von mapcar:
Man kann aber auf das Nulldevice testen, dann geht's wieder:

(findfile "<irgendeinverzeichnis>\\nul")


Hm.
Bei mir nicht. Was ist dieses Nulldevice?

------------------
www.cadditions.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 20. Mrz. 2003 16:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@mapcar
stimmt, ein ordner wird mittels einer routine erstellt, bzw. geprüft ob nicht schon der ordner vorh. ist.

@cadchup
... immer wieder ein besuch wert :-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 21. Mrz. 2003 09:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benwisch 10 Unities + Antwort hilfreich

@cadchup:

Das Null-Device ist ein Überbleibsel aus alten DOSenzeiten. Es gibt in jedem Verzeichnis genau 5 Dateien, wenn es leer ist. Das sind '.' und '..' sowie die Dateien 'PRN' und 'NUL'. Und die fünfte fällt mir grad nicht ein;-) NUL ist jedenfalls das 'Datennirvana', der Mülleimer oder wie man es nennen mag.

Da auch der Dos-Befehl EXIST nie auf ein Verzeichnis testen konnte, ist das in Batch-Dateien eine alte Technik - da man nicht auf das Verzeichnis testen kann, testet man eben, ob die Datei NUL in dem Verzeichnis existiert:

IF EXIST C:\TEMP\NUL ....

Genau diese Technik kann man hier mit findfile anwenden. Hinweis: Es ist zwar das Nulldevice, aber die Datei selbst heisst NUL (mit 1 'L').

Ach ja, jetzt klingelt's wieder - die fünfte Datei ist 'CON' - die Konsole. Dass das Dateien sind, kann man sich z.B. am COPY-Befehl klarmachen, der kann ja nur von einer Datei in eine andere kopieren:

COPY CON PRN .... druckt alles, was man eintippt, auf dem Drucker mit (^Z zum beenden eingeben, das ist das Dateiende-Zeichen von DOS, und genau deshalb kann ja read-char nicht damit umgehen)

COPY A:\*.* NUL ... Eine beliebte Methode, um die Integrität einer neu erstellten Diskette zu testen. Wenn kein Lesefehler auftrat, war sie ok.

Gruss, Axel

------------------
Meine AutoLisp-Seiten
Meine private Homepage
Mein Angriff auf dein Zwerchfell
Mein Lexikon der Fotografie
Mein gereimtes Gesülze
Meine Überzeugung...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz