Thursday, 15 January 2015

bash - Replace all hyphens at the end of line by '?' -


मेरे पास फ़ाइल है:

  ------ एफजीजेएफजी ---- हल्कज ---- एलकेएचजे ------- --- जेकेएलजेएलके ----- यूआईओयूपीओपीआईपीआईपीआईपीपी --- जीजीजेकेएचकेएलजेके ---------- जेकेएलएचकेएल जेएलकेजेएलकेजेएलकेजे   <पी> और मुझे यह चाहिए:  
  ?????? FGJFG ---- हल्कज ---- एलकेएचजे ??????? ??? JKLJLK ----- UIOUOPPOIPIPIPOPIP ??? जीजीजेकेएचकेएलजेके ---------- जेकेएलएचकेएलजेएलकेजेएलकेजेएलकेजे   

यानी, मैं सभी प्रमुखों को बदलना चाहता हूं और ' - ' उसी नंबर की ' कोड>? ', लेकिन' - 'अक्षरों के बीच नहीं

मुझे पता है कि यह कैसे करने के लिए अग्रणी है:

  Sed -i ': a; s / ^ \ (- * \) - / \ 1? /; Ta' फ़ाइल  

लेकिन मैं ' को बदलने के लिए कमांड को कैसे संशोधित कर सकता हूं? - 'लाइनों के अंत में?

आप perl :

  perl -pe 's / \ g- | - (? = - * $) /? / G'  

आउटपुट:

  बिल्ली फ़ाइल ?????? FGJFG ---- हल्कज ---- एलकेएचजे ??? ??? JKLJLK ----- UIOUOPPOIPIPIPOPIP ??? जीजीजेकेएचकेएलजेके ---------- जेकेएलएचकेएलजेएलकेजेएलकेजेएलकेजे  

No comments:

Post a Comment