ভিআইএম: কিভাবে উবুন্টুতে সঠিক লাইনে যেতে হবে


87

আমি ব্যাবহার করছি vi উবুন্টু 12.10 এ । কিছু ফাইল বেশ দীর্ঘ হয় তাই আমি যখন ফাইলের মাঝখানে যেতে চাই, আমাকে পৃষ্ঠাটি নীচে বা নীচে স্ক্রোল করতে হবে।

সঠিক লাইনের নম্বরে যাওয়ার জন্য কি ভিআইএম শর্টকাট আছে?


@ ভিম বিশেষজ্ঞরা। এটি কি সত্যিই উবুন্টু / বাশ- / লিনাক্স-নির্দিষ্ট (ওপি ট্যাগ অনুসারে)? আমি খুব বেশি ভিএম ব্যবহার করছি না, তবে আমার ব্যবহারের জন্য আমি উবুন্টু / সেন্টোস / সুস / উইন্ডোজ জুড়ে সামান্যতম পার্থক্য লক্ষ্য করিনি।
আলেকজান্ডার মালাখভ

উত্তর:


146
:150

আপনাকে vi তে 150 রেখায় নিয়ে যাবে

:1500

আপনাকে vi এ 1500 লাইনে নিয়ে যাবে

মতামত অনুযায়ী আপনি চেষ্টা করতে পারেন

150G

150 লাইনে পৌঁছানোর জন্য which যা কী কী স্ট্রোকের কম তা :150Enter যদি আপনি নিশ্চিত না হন আপনি কোন লাইনে চেষ্টা করছেন

 :set nu!

লক্ষ্য করুন:

আপনি যদি সর্বদা লাইনটি দেখতে চান তবে আপনার ভিআইএম প্রোফাইল সম্পাদনা বিবেচনা করুন। প্রায়শই

vi ~/.vimrc

এবং যোগ করুন

:set nu! 

এবং লিখুন এবং ছেড়ে দিন

:wq
#or you could use :x

এটি vi এর বাইরেও করা যায়। উদাহরণস্বরূপ, আমি যদি পাঠ্য ফাইলে 5000 লাইনটি মুছতে চাই তবে আমি স্ক্রিপ্টিং ভাষাটি ব্যবহার করতে পারি। উদাহরণস্বরূপ, সেড ব্যবহার করে এটি নিম্নলিখিত হবে

sed -i '5000d;' inputFile.txt

10 থেকে 20 লাইন মুছে ফেলতে হবে এটি

sed -i '10,20d;' inputFile.txt

লক্ষ্য করুন -i জায়গায় ফাইল সম্পাদনা করবে। -আই ছাড়া এটি স্ট্যাডআউট হয়ে যাবে। চেষ্টা করে দেখুন আপনি stdout একটি ফাইলে পুনর্নির্দেশ করতে পারেন

sed '5001,$d;' inputFile.txt >> appenedFile.txt

এটি আপনার জন্য এখানে প্রচুর হতে পারে। এটি 5001 থেকে line রেখা মুছে দেয় $ ফাইলটির শেষের সাথে। >> একটি ফাইল সংযুক্ত করা হবে। যেখানে> একটি নতুন ফাইল তৈরি করে।

আপনি যদি আগ্রহী হন তবে কোনও ফাইলের মধ্যে কতগুলি লাইন রয়েছে তা আপনি টাইপ করতে চাইতে পারেন wc -l inputFile.txt

এর মধ্যে কিছুটিকে অত্যন্ত তুচ্ছ মনে হতে পারে তবে আপনি যদি ৫০,০০০ লাইন দিয়ে কোনও ফাইল সম্পাদনা করার চেষ্টা করছেন তবে এটি খোলার জন্য এবং পথটি অতিক্রম করতে মিষ্টি মিনিট সময় নিতে পারে। যেখানে আপনি যদি জানেন যে আপনি কেবল শেষ লাইনটি মুছতে চান তবে আপনি সেড ব্যবহার করতে পারেন এবং সময়ের একটি অংশে এটি করতে পারেন।

সেড পাশাপাশি ফাইলের মধ্যে অনুসন্ধান এবং প্রতিস্থাপন করতে পারে। তবে সম্ভবত বিশ্রী, পারল বা অজগর একটি কার্যকর সমাধান হতে পারে।

তবে সামগ্রিকভাবে, আপনি vi এর উপর একটি ভাল টিউটোরিয়াল পেতে চাইবেন। হাজার হাজার অস্তিত্ব। আমি গুগলের সাথে পরামর্শ করব। সম্ভবত নিজেকে একটি ভিআইএম চিটসিয়েট হিসাবে সন্ধান করুন।


কোনও সমস্যা নেই, আমি আমার উত্তরটি একটু বাড়িয়েছি তবে। শুভকামনা
ম্যাচিউ

4
এছাড়াও, ভিমে আপনি টাইপ করতে পারেন: n50% এবং ফাইলের মাঝখানে যেতে পারেন।
এরিক ফোর্টিস

4
সাধারণ মোডে, 150Gএকই কাজ করে :150। এটি দ্রুত নয় তবে এটি মনে রাখা সহজ হতে পারে।
রোমেনেল

@romainl 150gg একই কাজ করে। উভয়ই প্রকৃতপক্ষে দ্রুত: 150 <সিআর>
র্যান্ডি মরিস

@ র্যান্ডি মরিস - হ্যাঁ, এটি দ্রুত, আমি আমলে নিতে ভুলে গেছি <CR>
রোমেনেল

14

অন্যান্য ভিআইএম টিপস: কমান্ড মোডে

  • H পর্দার শীর্ষে যায়
  • M পর্দার মাঝখানে যায়
  • L পর্দার নীচে যায়
  • gg প্রথম লাইনে যায়
  • G শেষ লাইনে যায়

7

কয়েক মিনিট সময় নিন এবং এই দস্তাবেজটি পড়া শুরু করুন । বিশেষত কনফিগার ফাইল সম্পাদনা করার দক্ষতার জন্য এটি আপনাকে দীর্ঘকালীন পুরষ্কার দেয়।


লিঙ্কটি এখন মারা গেছে
পিটার ডেভিড কার্টার

6

একটি খোলা টার্মিনাল থেকে, ব্যাশ শেলের মধ্যে, চালিয়ে আপনার ফাইলটি সম্পাদনা করুন:

$ vi +N yourfile

Nলাইন নম্বর কোথায় ।

দেখার জন্য ( moreবা less;):

$ less +N yourfile
$ more +N yourfile

সাইন +মানে কমান্ড শুরুতে চালানো । তাই আপনি যদি কমান্ড শুধুমাত্র একটি সংখ্যা, তারপর vi, lessএবং more, যেমন এই জাম্প হবে লাইন সংখ্যা

তবে আপনি /regexনির্দিষ্ট স্ট্রিং বা রেজেক্সের প্রথম উপস্থিতি সন্ধানের জন্যও ব্যবহার করতে পারেন :

$ less +/Error logfile
$ less -i +/error logfile      # -i Causes less's searches to ignore case
$ vi +/open.*myfile myprog...
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.