मेरे पास फ़ाइलों का एक बड़ा सेट है जिसमें मुझे एक पूर्ण URL योजना बदलने की आवश्यकता है। कुछ फ़ाइल नामों में स्थान होते हैं। बहुत खोज और परीक्षण और त्रुटि के बाद, यह मेरे पास आया निकटतम है:
find /somedir -type f -print0 -exec sed -i'' -e 's#http\\:\\/\\/domain.com#https\\:\\/\\/www.domain.com#g' {} +
परिणामी फ़ाइल में स्कीम है http:
हटाया जा रहा है //
- यानी '//www.domain.com'
इसके अतिरिक्त, एक नई फ़ाइल बनाई गई है, जिसमें संलग्न है -e
फ़ाइल नाम के लिए। - अर्थात। some file.php-e
जो स्पष्ट रूप से अवांछित है।
जबकि यह निश्चित रूप से (हटाने के बाद) पर्याप्त होगा *-e
फाइलें, मुझ में ओसीडी वास्तव में जानना चाहता है कि यह कैसे सही ढंग से करना है। नोट: मैं एक मैक पर स्थानीय रूप से काम कर रहा हूं, लेकिन यह लिनक्स पर भी प्रदर्शन करेगा।
किसी भी विचार का बहुत आभार माना जाएगा!
command c expects \ followed by text
। अंतिम एक विशिष्ट फ़ाइल पर काम करता है लेकिन मैं इसे पुनरावृत्ति (फ़ाइलनाम / डायरियों में संभावित रिक्त स्थान को ध्यान में रखते हुए) कैसे करता हूं?