वहाँ (यानी हार्ड लिंक बनाने के लिए) बताने के cpलिए एक रास्ता है --link, लेकिन मैं अंतर-डिवाइस हार्डलिंक कोशिश कर रहा हूँ, जहां मामले में वापस आ गया? इंटर-डिवाइस लिंक संभव नहीं हैं और यह cpविफल हो जाएगा।
मैं जो पूछ रहा हूं, वह इसलिए है क्योंकि मैं इस का उपयोग करना चाहूंगा GNUmakefileऔर कुछ विवादास्पद और लंबे समय तक (या एक फ़ंक्शन, उस मामले के लिए) पर एक पठनीय कमांड लाइन पसंद करूंगा।
सवाल जीएनयू कोरुटिल्स (7.4 और 8.13) के लिए है।
नोट: अभी वर्कअराउंड कुछ ऐसा होगा (GNU रेसिपी सिंटैक्स):
cp -fl $^ $@ || cp -f $^ $@
यह निश्चित रूप से अंतर-डिवाइस लिंक के मामले में सहज त्रुटि संदेश देगा, हालांकि दूसरे cpकॉल पर सफल रहा । इसके अलावा, फिर इसका विस्तार हो जाता है (स्रोत प्रपत्र सभी के बाद पठनीय दिखता है) यह अब भी पठनीय नहीं होगा।
$$मेरे मामले में डबल बेशक है क्योंकि यह एक मैक्रो के अंदर है। और निश्चित रूप से मैं क्या उपयोग कर रहा हूं, इसकी एक भिन्नता है। लेकिन कम से कम मुझे इस तरह से पता है कि यह एक विकल्प के रूप में मौजूद नहीं है और मुझे अपना स्वयं का प्रदान करने की आवश्यकता है।