सामान्य लिस्प में फ़ाइल प्राप्त करने के लिए पथ प्राप्त करें, क्या संकलित फ़ाइल (वर्तमान-निर्देशिका जैसे कुछ) के पथ को पाने का कोई तरीका है?सामान्य लिस्प -
फ़ाइल वर्तमान-निर्देशिका फ़ोल्डर के अंदर नहीं है।
सामान्य लिस्प में फ़ाइल प्राप्त करने के लिए पथ प्राप्त करें, क्या संकलित फ़ाइल (वर्तमान-निर्देशिका जैसे कुछ) के पथ को पाने का कोई तरीका है?सामान्य लिस्प -
फ़ाइल वर्तमान-निर्देशिका फ़ोल्डर के अंदर नहीं है।
यह एक टिप्पणी होना चाहिए लेकिन मैं कुछ कोड उदाहरण देने जा रहा हूं जो मूल पोस्टर के साथ मदद कर सकते हैं।
सबसे पहले, आपको जो करना है, उसके बारे में थोड़ा और स्पष्ट होना चाहिए। आप जिस समस्या को हल करने की कोशिश कर रहे हैं वह क्या है?
* *default-pathname-defaults*
#P"/Users/aerique/"
merge-pathnames
करने की अनुमति देता:
*default-pathname-defaults*
आमतौर पर निर्देशिका सीएल छवि में शुरू किया गया था करने के लिए सेट:
दूसरे, यहां जो उपयोगी हो सकता है उदाहरण के एक जोड़े हैं नए पथनाम बनाएं:
* (merge-pathnames "lib/misc" *default-pathname-defaults*)
#P"/Users/aerique/lib/misc"
* (merge-pathnames "lib/misc/" *default-pathname-defaults*)
#P"/Users/aerique/lib/misc/"
asdf:system-source-directory
रिटर्न एक प्रणाली ASDF के साथ भरी हुई करने के लिए पथ:
* (asdf:system-source-directory :linedit)
#P"/Users/aerique/quicklisp/dists/quicklisp/software/linedit-20111203-git/"
भी अधिक उपयोगी फ़ाइल और प्रणाली कार्यों के लिए जुड़ा हुआ ASDF मैनुअल देखें।
आप उपयोग कर सकते हैं:
*default-pathname-defaults*
कृपया देखें http://cybertiggyr.com/gene/pathnames-0/node11.html
मुमकिन है आप compile-file-pathname
चाहते हैं, जो आप गंतव्य जहां compile-file
में लिखते थे देता है।
यदि आप जो हासिल करने की कोशिश कर रहे हैं उस पर अधिक संदर्भ प्रदान करते हैं तो यह आपकी सहायता करेगा।
*load-truename*
resp। *load-pathname*
आपको जो चाहिए वह देता है।
http://www.lispworks.com/documentation/HyperSpec/Body/v_ld_pns.htm