ভিএম-তে খোলা একটি ফাইলের ^ এম লাইনব্রেকটি কীভাবে 'স্বাভাবিক' লাইনব্রেকে রূপান্তর করবেন?


481

প্রতি লাইনে উইম শো শো হয় ^ এম

আমি কীভাবে এটি একটি 'সাধারণ' লাইন ব্রেকের সাথে প্রতিস্থাপন করব?



3
ফাইলফর্ম্যাট পরিবর্তনের সমাধানটি পরিবর্তন করুন কারণ এটিই সবচেয়ে পরিষ্কার সমাধান।
এরিকবওয়ার্ক

1
আমি জানি এই প্রশ্নটি ভিআইএম সম্পর্কে, তবে গুগলের কিছু অন্যান্য অনুসন্ধানগুলিও এই থ্রেডে অবতীর্ণ হয়েছে। সুতরাং, আপনি যদি আপনার সিস্টেমে Eclipse ইনস্টল করে থাকেন তবে আপনি কয়েকটি ক্লিকের মাধ্যমে একক ফাইল বা ফাইলগুলির একটি সম্পূর্ণ ফোল্ডার গাছের জন্য লাইন ডিলিমিটার রূপান্তর করতে পারেন: stackoverflow.com/a/7019737/1364747
টেডি

আমি পছন্দ করি আপনি কীভাবে সাধারণ লাইনের ব্রেকগুলি "স্বাভাবিক" বলছেন - সেই in এম লাইন ব্রেকগুলির বিপরীতে :-)
ডারমাইক

উত্তর:


134

এটিই আমার পক্ষে কাজ করেছে:

: ই ++ এফএফ = ডস

এটি এখানে পেয়েছে: http://vim.wikia.com/wiki/File_format



19
:e ++ff=dosএরপরে :set ff=unixশেষগুলি একটি বুদ্ধিমান বিন্যাসে রূপান্তরিত করবে।
মতিন উলহাক

সমাধানের প্রতিক্রিয়া আমার পক্ষে কার্যকর হয়নি, কেবলমাত্র @ মাটেন উলহাক আদেশই আমাকে সাহায্য করেছে।
এডেনশো

577

হুকুম

:%s/<Ctrl-V><Ctrl-M>/\r/g

যেখানে <Ctrl-V><Ctrl-M>টাইপ Ctrl+ Vতারপর Ctrl+ টাইপ M

ব্যাখ্যা

:%s

বিকল্প,% = সমস্ত লাইন

<Ctrl-V><Ctrl-M>

Characters এম অক্ষরগুলি (সিটিআরটিএল-ভি হ'ল সিআরটিএল ^ চরিত্রটি লেখার একটি সহজ উপায় এবং সিটিআরএল-এম নিয়মিত প্রকাশের পরে এম লিখেন, ফলস্বরূপ ^ এম বিশেষ চরিত্রের ফলে)

/\r/

নতুন লাইনের সাথে ( \r)

g

এবং এটি বিশ্বব্যাপী করুন (কেবলমাত্র লাইনে প্রথম ঘটনা নয়)।


21
এটি ^ এম অক্ষরগুলি সরিয়ে ফেলেছে তবে ক্যারেজের রিটার্ন সন্নিবেশ করে না।
ভাগ্যটাইক্সি

14
@ জম্পনেট - আপনাকে সিআরটিএল-ভি / সিটিআরএল-কি-র কীগুলি ধাক্কা দিতে হবে, শব্দটিকে ভারব্যাটিম লেখা হিসাবে প্রবেশ করবেন না।
চিতাবাঘ স্কিনপিলবক্সহ্যাট

33
এটি অবশ্যই প্রশ্নের সঠিক উত্তর, যদি আপনার একটি নতুন লাইন অনুসরণ করে ^ এম থাকে তবে আপনি নতুন লাইন রাখতে চান তবে ^ এম সরিয়ে ফেলতে চান। আপনার ফাইলের দ্বিগুণ ফাঁকা স্থানের নীচে অন্য বিকল্পগুলি করা।
dlamblin

12
যদি আপনি এখনও একটি ক্যারেজ রিটার্ন অনুপস্থিত (যেমন ^ এম সরিয়ে ফেলা হয়েছে তবে সমস্ত কিছুই একটি লাইনে আবৃত রয়েছে), করুন: :%s/<Ctrl-V><Ctrl-M>/\r/g(যেখানে line আর নতুন লাইনের সাথে এম rep এম প্রতিস্থাপন করা হয়েছে)।
উইলিয়াম তারেল

7
আপনি যদি উইন্ডোতে ভিম চালাচ্ছেন তবে আপনাকে <Ctrl-Q> এর পরিবর্তে <Ctrl-Q> ব্যবহার করতে হবে।
গ্র্যান্ডএডমিরাল

418

লিনাক্স এবং ম্যাক ওএসে, নিম্নলিখিতগুলি কাজ করে,

:%s/^V^M/^V^M/g

যেখানে + ^V^Mটাইপ মানে , তারপর + ।CtrlVCtrlM

দ্রষ্টব্য: উইন্ডোজে আপনি সম্ভবত ^Qপরিবর্তে ব্যবহার করতে চান ^V, যেহেতু ডিফল্টরূপে ^Vপাঠ্য আটকানোর জন্য ম্যাপ করা হয়।


3
কেন এটি একটি ডাউনটোট পেল? এমনকি যদি আপনার ফাইলটি এক লাইনে ছড়িয়ে যায় তখনও এটি কাজ করে কারণ এটির ভুল লাইন শেষ হয়েছে।
পল টমলিন 13

2
না। আমার উপায় ফাইলের লাইন প্রান্তের যা কিছু আছে তার পরিবর্তে সঠিক লাইন প্রান্তটি রয়েছে।
পল টমবলিন 14

7
এটি অন্যরকম সমস্যার জন্য যখন আপনার ফাইলটিতে কোনও নতুন লাইন নেই, যা আমি স্বীকার করব যে এটি আরও সাধারণ। FYI ^ M \ r
dlamblin

12
এটি একটি গভীর রহস্যজনক আদেশ, তবে এটি ম্যাকের জন্য আমার পক্ষে কাজ করে।
এরিক ওয়াকার

5
আমি সমতুল্য %s/\r/\r/gম্যাকভিমে ভালভাবে কাজ করেছি এমন একটি ফাইলের জন্য যা কেবলমাত্র ^Mলাইনের শেষে থাকে (ম্যাকভিমের শর্তে একটি দীর্ঘ লাইন)। স্পষ্টতই command r এর অর্থ এই কমান্ডের বনাম প্রতিস্থাপনের অংশগুলি প্যাটার্নের বিভিন্ন জিনিস।
রিচভেল

184

এর মধ্যে vimফাইল ফর্ম্যাটটি দেখুন - ডস বা ইউনিক্স:

:set filetype=unix

:set fileformat=unix

ক্যারেজ রিটার্ন (সিআর,, এম) অক্ষর ছাড়াই ফাইলটি আবার লেখা হবে।


3
ব্যবহার: সেট ফাইল ফর্ম্যাট = ইউনিক্স বেশিরভাগ কনফিগারেশনের জন্য ফাইল টাইপ কেবলমাত্র সিনট্যাক্স টাইপ ব্যবহার করে।
derGral

6
এটি আমার কাছে থাকা বাগটি সংশোধন করেছে ... ভিম আমার ইউনিক্স ফর্ম্যাট করা ফাইলটি উইন্ডো এবং নতুনভাবে পরিবর্তিত রেখাগুলি গিট ডিফটিতে showing এম প্রদর্শন করছে।
থমাস হান্টার দ্বিতীয়

সিস্টেম নির্ভর হতে হবে। আজ, এই এক কাজ করে। সেট কমান্ডটি ভিএম, বিটিডব্লিউয়ের মধ্যে সম্পন্ন হয়।
gbarry

1
দুর্দান্ত! কারণ ফাইলফর্ম্যাটটি ডস, এটি ইউনিক্স হিসাবে সেট করুন এবং ঠিক আছে
zhaozhi

3
এটি ভিআই বিটিডব্লিউতেও কাজ করে এবং আপনি set ff=unixএকইভাবে একটি ছোট শর্টকাট হিসাবেও করতে পারেন এর ftশর্টকাটfiletype
পোস্টা

110

ম্যাকভিমে দেখা বিবিএডিট দিয়ে আমার তৈরি করা একটি ফাইল ^Mনিয়মিত ফাইলের পরিবর্তে একগুচ্ছ লাইন রিটার্ন প্রদর্শন করছে । নিম্নলিখিত স্ট্রিংটি সমস্যার সমাধান করেছে - আশা করি এটি সহায়তা করে:

:%s/\r/\r/g

এটি আকর্ষণীয় কারণ আমি একই চরিত্রটির সাথে লাইন ব্রেকগুলি প্রতিস্থাপন করছি তবে আমি মনে করি সঠিকভাবে প্রদর্শন করার জন্য ভিমকে কেবল একটি নতুন \ আর পাওয়া দরকার। আমি কেন এটি কাজ করে তার অন্তর্নিহিত যান্ত্রিকগুলি জানতে আগ্রহী হব।


1
সন্ধানের ক্রিয়াকলাপগুলির শেষ প্রান্তের লাইনের ক্রমগুলি স্বীকৃতি দেওয়ার জন্য বিস্তৃত নিয়মগুলি গ্রহণ করার প্রবণতা রয়েছে। যখন এটি ডেটা হিসাবে লেখা হয় তখন \ r এর একটি নির্দিষ্ট অর্থ থাকে।
গুবারি

এটি উইন্ডোজ জিভিমে আমার পক্ষে এমন একটি ফাইল বাছাই করতে কাজ করেছিল যার কোনও লাইন ব্রেক ছিল না, কেবলমাত্র প্রচুর ^ M এর পরিবর্তে।
ফ্ল্যাশ

2
এই পৃষ্ঠায় প্রদত্ত সমস্ত সমাধান থেকে, এটি কেবলমাত্র প্যাটার্নই ছিল যা আমার জন্য সিএসভি ফাইল থেকে ^ এম অপসারণে কাজ করেছিল। ম্যাকভিম ব্যবহার করা হচ্ছে।
বি 6431

+1 মোবাটারেম ব্যবহার করে উইন্ডোজ থেকে উবুন্টু ট্রাস্টির কাছে এসএসএইচিংয়ের সময় আমার জন্যও কাজ করেছিল
কার্ল

সুতরাং, এটি প্রতিস্থাপন হিসাবে নির্দিষ্ট করেও সমস্ত \rঅক্ষরকে প্রতিস্থাপন করবে বলে মনে হয়েছিল । অভিযোগ না করা, আমি যা চেয়েছিলাম ঠিক এটাই। অদ্ভুত। \n\r
ডোনাট

34

প্রথম, ব্যবহার :set ff? আপনার ফাইলটি ফাইল ফর্ম্যাটটি বের করতে করুন।

আমার ধারণা এটি হতে পারে unixতবে সমস্যাটি হ'ল আপনার ফাইলটি fileformat=dos"^ M ^ J" যুক্ত করে লাইন প্রান্তে তৈরি করে দিয়ে পড়া হয়েছিলflieformat=unix কেবল "^ জে" কে লাইন প্রান্ত থেকে সরিয়ে দিয়ে সেখানে "^ এম" রেখে চলেছেন।

:e ++ff=dosআপনার ফাইলের ফর্ম্যাটটিকে ইউনিক্স থেকে ডস হিসাবে পরিবর্তন করতে কেবল ভিম কমান্ড লাইনে ইনপুট করুন । এটি সমস্যার সমাধান করা উচিত। যদি না হয়, :%s/\r//gআপনাকে সাহায্য করা উচিত।


3
আমার দুটোই করতে হয়েছিল। :e ++ff=dosতারপরে :set ff=unixএবং:w
সর্বাধিক

29

character এম অক্ষরটি মিলে যাওয়ার জন্য আমাকে এটিকে চাক্ষুষভাবে নির্বাচন করতে হয়েছিল এবং তারপরে এটি পুনরুদ্ধারের জন্য ক্লিপবোর্ড কমান্ডে ওএস অনুলিপিটি ব্যবহার করতে হয়েছিল। আপনি প্রতিস্থাপন কমান্ড চেষ্টা করার আগে অক্ষরটির জন্য অনুসন্ধান করে এটি পরীক্ষা করতে পারেন।

/^M

প্রথম খারাপ রেখাটি নির্বাচন করা উচিত

:%s/^M/\r/g

সমস্ত ত্রুটিযুক্ত ^ এমকে গাড়ীর রিটার্নের সাথে প্রতিস্থাপন করবে।

এটি ম্যাকভিমে ফাংশন হিসাবে রয়েছে যা gvim 7 এর উপর ভিত্তি করে।

সম্পাদনা করুন:

আমার উইন্ডোজ 10 মেশিনে আবার এই সমস্যাটি রয়েছে যার উইন্ডোজের উবুন্টু রয়েছে এবং আমি মনে করি এটি ভিএম-র জন্য ফাইল-ফর্ম্যাট সমস্যা সৃষ্টি করছে। এই ক্ষেত্রে এফএফটিকে ইউনিক্স, ম্যাক, বা ডস থেকে পরিবর্তন করে ^ এম থেকে ^ জে পরিবর্তন করে আবার ফিরে আসা ছাড়া আর কিছুই করেনি।

এই ক্ষেত্রে সমাধান:

:%s/\r$/ /g
:%s/ $//g

আমি এই পথে যাওয়ার কারণটি হ'ল কারণ আমি নিশ্চিত করতে চেয়েছিলাম যে আমার ফাইলটি আমি অ-ধ্বংসাত্মক হয়ে যাচ্ছি। আমি থাকতে পারতাম :%s/\r$//gতবে গাড়ি চালানো ফেরত মুছে ফেলা হত এবং অপ্রত্যাশিত ফলাফল হতে পারে। পরিবর্তে আমরা একক সিআর অক্ষর, এখানে একটি ^ এম অক্ষরকে একটি স্পেসে রূপান্তর করি এবং তারপরে লাইনের শেষে সমস্ত স্থান সরিয়ে ফেলি (যা আমার পক্ষে পছন্দসই ফলাফল)

দীর্ঘদিন ধরে উত্তর দেওয়া হয়েছে এমন একটি পুরানো প্রশ্ন পুনরুদ্ধার করার জন্য দুঃখিত, তবে এটি আগে কিছুটা বিভ্রান্তি বলে মনে হয়েছিল এবং আমি ভেবেছিলাম যে গুগল অনুসন্ধানগুলিতে এটি উচ্চতর আসার পরে আমি সেগুলির কয়েকটি পরিষ্কার করতে সহায়তা করব।


1
ctrl-v ctrl-m টিপতে অক্ষরটি সন্নিবেশ করতেও কাজ করতে পারে, fww। তবে \ r হ'ল যথাযথ গাড়ীর ফেরত সন্নিবেশ করানো হয়।
মেটাগ্রাফার

1
এটি সঠিক উত্তর। উপরে যেমন বলা হয়েছে, কমান্ডে আক্ষরিক ^ এম sertedোকাতে <ctrl-v> <ctrl-m> ব্যবহার করুন।
কার্লোসায়াম

1
আমি সম্মত, যদিও আমি নিশ্চিত যে এটি যদি মূল পোস্টের সময়ে আমার পক্ষে কাজ করে তবে আমি পোস্ট করতাম না। ;)
মেটাগ্রাফার

22

এগুলির কোনওটিই আমার পক্ষে কাজ করেনি, তাই আমি এটি চেষ্টা করেছিলাম, যা কাজ করেছিল:

আদর্শ :%s/

প্রেস CTRL-VCTRL-M

আদর্শ //g

প্রেস Enter

সুতরাং ভিম জোরে সামগ্রিক কমান্ড মত চেহারা :%s/^M//g

এটি কী করে: :%s(সন্ধান করুন এবং প্রতিস্থাপন করুন) /^M/(সেই চিহ্ন) /(কোনও অক্ষর ছাড়াই) g(বিশ্বব্যাপী)।


এক্ষুনি!! ম্যাক উপর কাজ করে।
shamail


15

Ctrl ব্যবহার করার প্রয়োজন ছাড়াই: :%s/\r$//


1
এইভাবে আমি এটিও করি। আমি ঠিক কখনই কমান্ডটি মনে করি নি
পিক্সেল 67

এই শেষগুলি সরিয়ে ফেলার জন্য এটিই প্রস্তাবিত উপায়।
মেটাগ্রাফার


12

আমি সেড দিয়ে এটি করেছি:

sed -i -e 's/\r/\n/g' filename


আপনি কি নিশ্চিত যে এটি কাজ করে? ওএসএক্সে: sed -e 's/\r/\n/g' <<< 'over and over'->oven and oven
আরমান্ড

হ্যাঁ এটি কাজ করে (আমি এটি প্রচুর ব্যবহার করি), তবে ওএসএক্সে আপনার যদি সেডের জিএনইউ সংস্করণ ইনস্টল না থাকে তবে এটি কাজ নাও করতে পারে। ডিফল্টরূপে অ্যাপল জাহাজের যে সংস্করণের সংস্করণটি সমস্ত লিনাক্স ডিস্ট্রোজে পাঠানো জিএনইউ সংস্করণের তুলনায় অনেক বেশি আলাদা (দুঃখের সাথে)। আরও সহায়তার জন্য এই প্রশ্নের উত্তরটি দেখুন: stackoverflow.com/q/30003570/2062384
ফ্রিডম_বেন

ধন্যবাদ @ ফ্রিডম_বেন। সুতরাং মনে হচ্ছে এটি জিএনইউর পক্ষে কাজ করে sedতবে বিএসডি sedতখন নয় (ওএসএক্সে পাওয়া যায়)। যে কেউ লাইন ব্রেকগুলি ঠিক করছে সম্ভবত অপারেটিং সিস্টেমের মিশ্রণ নিয়ে কাজ করছে, সুতরাং উত্তর কখন কার্যকর হবে সে সম্পর্কে পরিষ্কার হওয়া কার্যকর to
আরমান্ড

10

শুধু কী সম্পর্কে: :%s/\r//g এটি আমার পক্ষে পুরোপুরি কাজ করেছিল।

এটি যা করে তা কেবল সমস্ত লাইনের লাইনের শেষ পরিষ্কার করার জন্য, এটি ^ M কে সরিয়ে দেয় এবং এটিই।


9

এই প্রশ্নের আরও অনেক উত্তর রয়েছে তবে তবুও নিম্নলিখিতটি আমার পক্ষে সবচেয়ে ভাল কাজ করে, কারণ আমার একটি কমান্ড লাইন সমাধান প্রয়োজন:

vim -u NONE -c 'e ++ff=dos' -c 'w ++ff=unix' -c q myfile

ব্যাখ্যা:

  • কোনও .vimrc ফাইল লোড না করে, খুলুন myfile
  • চালান :e ++ff=dos ডস লাইন শেষা w শ যেমন সমগ্র ফাইলের একটি রিলোড বলপূর্বক।
  • চালান :w ++ff=unixUNIX লাইন শেষা w শ ব্যবহার ফাইলটি লিখতে
  • ছাড়ুন ভিম

3
ধন্যবাদ! এটি আমার সমস্যাটি স্থির করে এবং স্ক্রিপ্টগুলিতে ব্যবহার করা দরকারী বলে মনে করেছে
পেডডিপাগা

8

Ctrl+ Mআমার উইন্ডো হ্রাস করে, কিন্তু Ctrl+ Enterআসলে একটি ^Mঅক্ষর সন্নিবেশ করে । আমারও নিশ্চিত হওয়া উচিত যে Ctrlপ্রেসগুলির মধ্যে কীটি তুলে না ফেলতে হবে ।

সুতরাং আমার জন্য সমাধানটি ছিল:

:%s/<Ctrl-V><Ctrl-Enter>/\r/g

কোথায় <Ctrl-V><Ctrl-Enter>করার উপায় টিপে ধরে রাখুন Ctrl , প্রেস ও মুক্তি V, প্রেস ও মুক্তি Enter, এবং তারপর মুক্তি Ctrl

আপনি যদি উইন্ডোজ-উত্পন্ন ফাইলটিতে কাজ করছেন

উপরের সমাধানটি বিদ্যমান রেখাগুলির মধ্যে একটি অতিরিক্ত লাইন যুক্ত করবে, কারণ এর \rপরে ইতিমধ্যে একটি অদৃশ্য রয়েছে ^M

এটি প্রতিরোধ করতে, আপনি ^Mঅক্ষরগুলি প্রতিস্থাপন না করে মুছতে চান ।

:%s/<Ctrl-V><Ctrl-Enter>//g

যেখানে %"এই বাফারটিতে" এর sঅর্থ, "বিকল্প," এর /অর্থ নিম্নলিখিত প্যাটার্ন, " অক্ষরটি (উপরে দেখুন) <Ctrl-V><Ctrl-Enter>পেতে টিপতে চাবিগুলি বোঝায় ^M, //অর্থ" কিছুই নেই "(বা," প্যাটার্ন সহ) এই দুটি স্ল্যাশগুলির মধ্যে, যা খালি "), এবং gএটি একটি লাইনের প্রথম উপস্থিতির বিপরীতে" বিশ্বব্যাপী, "অর্থ একটি পতাকা


7

এটি আমার পক্ষে কাজ করেছে:

  1. ইউনিক্সে ফাইল ফর্ম্যাট সেট করুন ( \nলাইন শেষ)
  2. ফাইল সংরক্ষণ করুন

তাই ভিমে:

:set ff=unix
:w

1
এইটি আমার পক্ষে কাজ করেছিল, যদিও গৃহীত উত্তরটি তা দেয়নি।
মার্সেলো রোমানি

7

আমার ক্ষেত্রে,

উপরের কিছুই কাজ করে নি, আমার ম্যাক থেকে লিনাক্স মেশিনে আমার একটি সিএসভি ফাইল অনুলিপি করা হয়েছিল এবং আমি উপরের সমস্ত কমান্ড ব্যবহার করেছি তবে নীচের একটি ছাড়া আর কিছুই সাহায্য করেনি

tr "\015" "\n" < inputfile > outputfile

আমার একটি ফাইল ছিল যাতে ^ এম অক্ষরগুলি নীচের মতো লাইনের মাঝে স্যান্ডউইচ করা ছিল

Audi,A4,35 TFSi Premium,,CAAUA4TP^MB01BNKT6TG,TRO_WBFB_500,Trico,CARS,Audi,A4,35 TFSi Premium,,CAAUA4TP^MB01BNKTG0A,TRO_WB_T500,Trico,

5

বিকল্পভাবে, ডস 2 ইউনিক্স এবং ইউনিক্স 2 ডিওস নামে পরিচিত ওপেন-সোর্স ইউটিলিটিগুলি পাওয়া যায় যা এটি খুব কাজ করে। একটি লিনাক্স সিস্টেমে এগুলি সম্ভবত ডিফল্টরূপে ইনস্টল করা থাকে; উইন্ডোজ সিস্টেমের জন্য আপনি এটিকে অন্যদের মধ্যে http://www.bastet.com/ থেকে ডাউনলোড করতে পারেন ।


5
sed s/^M//g file1.txt > file2.txt

যেখানে keys এম একসাথে 3 টি টিপুন টাইপ করে টাইপ করা হয়, ctrl + v + m


4

উইন্ডোতে ফাইলটি তৈরি করা হয় তবে ডস 2 ইউনিক্স ইউটিলিটি ব্যবহার করুন, ম্যাকের উপর ফাইলটি তৈরি করা হলে ম্যাক 2 ইউনিক্স ইউটিলিটি ব্যবহার করুন। :)


এর আগে ম্যাক 2 ইউনিক্সের কথা আগে কখনও শুনিনি, আমি পারলে আবার উপুড় হয়ে উঠতাম!
কুফ

Huray! এই পথেই!
ব্যক্তিগত



1

করতে কীস্ট্রোকগুলি সংরক্ষণ , আপনি টাইপিং এড়াতে পারেন Ctrl+ + VCtrl+ + Mএকটি ম্যাপিং এই স্থাপন দ্বারা। কেবল একটি ^ এম অক্ষরযুক্ত একটি ফাইল খুলুন, এটি ইয়াঙ্ক করুন এবং আপনার .vimrc এ এই জাতীয় লাইনে আটকে দিন:

nnoremap <Leader>d :%s/^M//g<CR>

1

এই পরামর্শগুলির মধ্যে আমার ^Mকোনওটিই ভিএম এবং গ্রহন উভয়ের সাথে কাজ করার সময় লাইন ব্রেকগুলির একটি বোঝা অর্জন করতে পরিচালিত ছিল না । আমার সন্দেহ হয় যে আমি বাইরের কেসের মুখোমুখি হয়েছি তবে ক্ষেত্রে এটি আমার যে কাউকে সহায়তা করে।

:%s/.$//g

এবং এটি আমার সমস্যার সমাধান করেছে


এটি একটি লাইনের শেষে যে কোনও অক্ষর সরিয়ে ফেলবে। আপনার যদি এমন কোনও লাইন থাকে যা কোনও কারণে ^ এম দ্বারা বন্ধ হয়ে যায় তবে আপনি সেই চরিত্রটিও সরিয়ে ফেলবেন এবং অপ্রত্যাশিত হয়ে উঠবেন। এটি হওয়া উচিত নয়, তবে ঘটনাটি যেমনটি হয় এবং আপনি এটি জানেন না, তবে আপনি নিজের ফাইলটি খুব সহজেই সনাক্ত করতে পারবেন।
মেটাগ্রাফার

1
:g/^M/s// /g

আপনি যদি এটি ^Mব্যবহার Shift+6 Caps+Mকরে টাইপ করেন তবে তা গ্রহণ করবে না।

আপনার টাইপ করা দরকার ctrl+v ctrl+m


1

^Mঅযাচিত লাইন ব্রেক দেয়। এটি পরিচালনা করতে আমরা sedনিম্নলিখিত কমান্ডটি ব্যবহার করতে পারি :

sed 's/\r//g'

আইডিকি কেন এটি -1 এ নিম্নচালিত হয়েছিল ... কারণ এতে সেড ব্যবহার করা হয়? আপনি
ভিএম এর

1

set binaryআপনার .vimrc এ সরিয়ে ফেলুন !


অন্য একটি থ্রেডে, "সেট বাইনারি" নতুন লাইনের স্বয়ংক্রিয় সন্নিবেশ থেকে মুক্তি পাওয়ার জন্য সুপারিশ করা হয়েছিল।
dexter2305

1

sedMacOS এ ব্যবহার করতে , এটি করুন:

sed -i.bak $'s/\r//' <filename>

ব্যাখ্যা: এখানে $'STRING'সিনট্যাক্স ব্যাশ শেলের সাথে সম্পর্কিত। ম্যাকগুলি \rবিশেষ চরিত্র হিসাবে বিবেচনা করে না । কমান্ড স্ট্রিংয়ের উদ্ধৃতি দিয়ে $''আপনি শেলকে এএনএসআই-সি স্ট্যান্ডার্ডে নির্দিষ্ট করা \rপ্রকৃত \rচরিত্রের সাথে প্রতিস্থাপন করতে বলছেন ।


0

"এই ফাংশনটি জাম্পগুলির তালিকা সংরক্ষণ করে

fun! Dos2unixFunction()
let _s=@/
let l = line(".")
let c = col(".")
try
    set ff=unix
    w!
    "%s/\%x0d$//e
catch /E32:/
    echo "Sorry, the file is not saved."
endtry
let @/=_s
call cursor(l, c)
endfun
com! Dos2Unix keepjumps call Dos2unixFunction()

এই ক্ষেত্রে, * এনআইএক্সের নেটিভ ডস 2 ইউনিক্স কমান্ডটি ব্যবহার করে কী ভুল হয়েছে? linux.die.net/man/1/dos2unix
মেটাগ্রাফার

0

আমি একটি বিকেল spent n ctrl-v 012 (উভয়ই আমাকে নাল দিয়ে সরবরাহ করে) দিয়ে লড়াই করে কাটিয়েছি। আমি মেটাগ্রাফারে পৌঁছানো পর্যন্ত এই থ্রেডটি দিয়ে শ্রম দিয়েছি।

\r আমার জন্য ভাল কাজ!

/),/s/),/)\r/g

এই মত কিছু পরিণত:

ব্ল্যাকলিস্ট-অতিরিক্ত: i386 (0.4.1, 0.4.1 + এনএমউ 1), লিবমাউন্ট 1: আই 386 (2.20.1-5.1, 2.20.1 -5.2), লিবলব্লিড 1: i386 (2.20.1-5.1, 2.20.1-5.2) , libapt-pkg4.12: i386 (0.9.7.4, 0.9.7.5), এনএম্যাপ: আই 386 (6.00-0.1, 6.00-0.2), লিবাসন-সাধারণ: i386 (1.0.22-7.3,

এরকম কিছুতে:

26 লিবিডব্লিউভি-1.2-4: আই 386 (1.2.9-3, অটোমেটিক)
27 ওপেনডেডি -6-জের-হেডলেস: আই 386 (6 বি 24-1.11.4-3, স্বয়ংক্রিয়)
28 জেড: আই 386 (0.99.19-2.1)

ম্যাজিক। আমি গভীরভাবে কৃতজ্ঞ

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.