টার্মিনালে নির্বাচনী কমান্ড-ইতিহাস?


9

একটি টার্মিনালের মধ্যে, আপনি যখন আপনার কীবোর্ডে টিপুন, আপনি ক্রম করার আগে আপনি যে অতীত আদেশগুলি দিয়েছিলেন তা দেখতে পাবেন। আমি ভাবছিলাম যে অতীতে কমান্ডগুলি দেখার জন্য যদি কোনও উপায় ছিল - উদাহরণস্বরূপ, "ls -l" দিয়ে শুরু করে। এইভাবে, যদি আদেশের তালিকাটি হয়:

  1. ls -l -a
  2. cmake
  3. সিডি ~ / ডেস্কটপ
  4. cmake

"Ls" এবং ট্যাব লেখার একটি উপায় বা "ls" দিয়ে শুরু হওয়া টার্মিনালটিতে অতীত কমান্ডটি পপ আপ করতে কী-স্ট্রোকের যে কোনও সংমিশ্রণের প্রয়োজন রয়েছে

ধন্যবাদ,

উত্তর:


14

এটি কেবল শুরু হওয়া জিনিসগুলি দেখায় না ls, তবে আপনি Ctrl-R lsইতিহাসের পিছনে অনুসন্ধান করতে করতে পারেন । Ctrl-Rপরের ম্যাচটি সন্ধান করতে পুনরাবৃত্তি করুন ।


CTRL+Rশর্টকাট কমান্ডের জন্য আপনাকে ধন্যবাদ ।
ক্লেবার এস।

8

কখনও কখনও এটি থাকা দরকারী ...

উদাহরণ

Ssh ব্যবহার করে অন্য একটি মেশিনে সংযুক্ত হচ্ছে:

টাইপিং শুরু করুন

ssh

PgUpকী ব্যবহার করুন এবং আপনার এসএসটি আপনার শেষ ব্যবহৃত ব্যবহৃত দিয়ে শেষ হবে ... PgUpআবার টিপুন এবং এটি আপনাকে পরেরটি দেয় এবং আরও কিছু দেয়। পছন্দ করি?

আপনি এটি ব্যবহার করতে পারেন:

আপনার .bashrc ( vi /home/<yourfolder>/.bashrc) সম্পাদনা করুন এবং এটি যুক্ত করুন:

$if Bash
    # Search history back and forward using page-up and page-down
    "\e[5~": history-search-backward
    "\e[6~": history-search-forward

    # Completion
    set match-hidden-files off
    set page-completions off
    set completion-query-items 350
    set show-all-if-ambiguous on

$endif

এটি আপনার ব্যবহারকারীর টার্মিনালটিতে এই ফাংশনটি যুক্ত করে। আপনাকে এটির মূলের একটিতেও একই সম্পাদনা করতে হবে: আপনি উইকি থেকে এই টিউটোরিয়ালটি অনুসরণ করতে পারেন এটির কোনও উপায় আপনি ভুল করতে পারবেন না, এছাড়াও আপনার টার্মিনাল অভিজ্ঞতার উন্নতি করার জন্য প্রচুর অতিরিক্ত স্টাফ রয়েছে ...


এমনকি আপনি এটিকে উপর / ডাউন তীর কীগুলিতে আবদ্ধ করতে পারেন: bind '"\e[A": history-search-backward'; bind '"\e[B": history-search-forward'এটি আরও স্বজ্ঞাত করে তুলছেন।
ফ্রিটজ

5

কমান্ডের ইতিহাসটি দেখতে, ব্যবহার করতে পারেন:

$ history

আপনি যদি কেবল পূর্ববর্তী কমান্ডটি উদাহরণস্বরূপ "ls" দিয়ে শুরু দেখতে চান তবে আমার মতে আমি ব্যবহার করি:

$ history | grep ls

অবশ্যই আউটপুটে কোনও কমান্ড নয় এমন কিছু থাকবে যা এতে "ls" অক্ষর থাকবে তবে আমি মনে করি এটি সাহায্য করতে পারে।


2

আপনি যা চান তা অর্জনের সবচেয়ে সহজ উপায় হ'ল !<whatever-command>। উদাহরণস্বরূপ ls, আপনি সর্বশেষে যেটি সম্পাদন করেছিলেন তা কার্যকর করতে, আপনি একটি করতে পারেন !ls। নীচের লগটি একবার দেখুন আপনার প্রয়োজনটি এটি কিনা তা দেখতে:

nits@nits-excalibur:~$ ls /mnt/Storage_1/Music/
Music I  Music II  Music III  Music IV  Music V  Music_VI
nits@nits-excalibur:~$ cd Documents/
nits@nits-excalibur:~/Documents$ top
nits@nits-excalibur:~/Documents$ !ls
ls /mnt/Storage_1/Music/
Music I  Music II  Music III  Music IV  Music V  Music_VI

1
এটি কমান্ডটি এটি প্রদর্শন না করেই চালায়, ওপির অনুরোধ অনুসারে এটির বিকল্প রয়েছে কি?
ব্রুনো পেরেইরা

Zsh এ, আপনি করতে পারেন setopt HIST_VERIFYএবং কমান্ডটি আপনার ইনপুট বাফারে রাখা হবে, যেখানে আপনি হয় এটি গ্রহণ করতে এন্টার টিপুন বা সম্পাদনা করতে পারেন।
পুলি

1

ইতিহাসটি অবস্থিত ~ / .Bash_history এছাড়াও, আপনার বাশ ইতিহাস অনুসন্ধানের জন্য একটি ঝরঝরে কৌশলের জন্য ctrl + r চাপুন তারপরে আপনি যে আদেশটি সন্ধান করছেন তার প্রারম্ভিক টাইপ করুন।

এবং http://ubuntuforums.org/showthread.php?t=204382 কুশলী কম্যান্ড-লাইন alias লেখা এবং ট্রিকস জন্য

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