जवाबों:
sed -e "\$aTEXTTOEND"
सबसे सरल तरीका है।
$
अंतिम पंक्ति से मेल खाता है (यह एक सामान्य sed
पता है; 4aTEXTTOEND
चौथी पंक्ति के बाद सम्मिलित किया जाएगा), a
एपेंड कमांड है, और TEXTTOEND
एपेंड क्या है।
sed -e '$a\NEWLINE\\'
। NEWLINE को वास्तविक नई लाइन से बदलें।
sed
उस मामले में उपयोग करने की आवश्यकता नहीं है । कैसा रहेगा
echo "<?php" >> file
<php
" और " >
", और एक ही बार में सभी चयनित सामग्री के हवाले से, तो वह शायद वास्तव में एक चाहते हैं करता है sed
टुकड़ा।
sudo
, इस के साथ prepending के मामले में है , जो इस भिन्नता को विफल करने का कारण बनता है क्योंकि echo
एक निष्पादन योग्य फ़ाइल के बजाय एक अंतर्निहित शेल कमांड है$PATH
echo
एक बिल्ट-इन है, लेकिन इसमें एक निष्पादन योग्य फ़ाइल भी पाई गई है$PATH
सभी के लिए अपने मूल पोस्ट को एक सेड कमांड में देखें।
find . -type f -exec sed -i -e "1s/^/<?php /" -e "\$s/\$/ ?>/" {} \;
Sed 'append (a)' कमांड का प्रयोग करें। उदाहरण के लिए, फ़ाइल के अंत में दो लाइनें जोड़ने के लिए:
sed -i -e '$a\
foo1 bar1\
foo2 bar2' file
किसी फ़ाइल में किसी विशिष्ट पंक्ति में सामग्री में परिवर्तन लिखने और बनाने के लिए एक सरल तरीके से। यदि आप किसी विशिष्ट पंक्ति संख्या में कुछ भी सम्मिलित करना चाहते हैं तो नीचे कमांड का उपयोग किया जा सकता है:
sed -i '2i i have started' sheikh.log
जहां 2i
- लाइन नंबर 2 और मैं डालने के लिए खड़ा है। यदि आपको अंतिम पंक्ति में सम्मिलित करना है तो $
2 के स्थान पर उपयोग करें । मैंने शुरू किया है - पाठ डाला जाना sheikh.log
है और फ़ाइल नाम है।
हम नीचे दिए गए कमांड का उपयोग करके लाइन में बदलाव भी कर सकते हैं
sed -i '2c we have started' sheikh.log
i
को बदल दिया जाता है we
।
{ cat file; echo 'END OF FILE'; } > newFile
, यह काम करने के लिए भी शुक्रिया अदा करता है। * (sed नहीं बल्कि कार्य और सरल)