linux - make diff to ignore symbolic link -


मेरी परियोजना में निम्नलिखित संरचना है

  /project/config.mk / project / dir1 /config.mk - & gt; ../config.mk /project/dir2/config.mk - & gt; ../config.mk   

जब मैंने पैच फ़ाइल बनाने के लिए diff का उपयोग किया, तो /project/config.mk किया गया था सही है, लेकिन दो प्रतीकात्मक लिंक को कुछ समस्याएं मिलीं। इन दोनों को नई फाइलों के रूप में माना जाता था, डिफ वर्गों को config.mk फ़ाइल की पूरी सामग्री थी। मैंने निम्न सांकेतिक लिंक को अक्षम करने के लिए एक diff विकल्प ढूंढने की कोशिश की, लेकिन ऐसा कोई विकल्प उपलब्ध नहीं है किसी भी सुझाव की सराहना की जाती है।

ओवरबोस के सुझाव के रूप में, मैं यह स्क्रिप्ट बना रहा हूं। यह काम करता हैं। समय का उत्तर देने के लिए सभी को धन्यवाद।

  #! / Bin / sh -v ori_dir = $ 1 new_dir = $ 2 patch_file =। / Patch_file यदि [-f $ {patch_file}] तो rm $ {patch_file} } Fi ori_files = `cd $ {ori_dir}; खोजें। / -प्रकार एफ! $ {Ori_files} में मैं के लिए प्रकार l`; अगर [-f $ {ori_dir} / $ i] तब यदि [-f $ {new_dir} / $ i] तब diff -rup $ {ori_dir} / $ i $ {new_dir} / $ i & gt; & gt; $ {Patch_file} से पहले    

निम्नलिखित तरीके से ढूंढें का प्रयोग करें: <पूर्व> ढूंढें ! -प्रकार l

यह विकल्प निम्नलिखित प्रतीकात्मक लिंक को छोड़ देना चाहिए। उस फ़ाइल को अपनी फ़ाइल को diff चलाने से पहले ढूँढने के लिए उपयोग करें।

Comments