"ট্যাব সম্পূর্ণ" দ্বারা প্রদর্শিত কমান্ডের তালিকাটি কীভাবে পাইপ করবেন?


12

ব্যাশে কমান্ডগুলি ব্যবহার করার সময় উপলভ্য কমান্ডগুলি প্রদর্শনের জন্য ডাবল ট্যাব বিকল্পটি পছন্দ করি। কিছু কমান্ডের অন্যদের চেয়ে বেশি সম্ভাব্য মিল রয়েছে:

একটি ট্যাব সমাপ্তির স্ক্রিনশট http://img13.imageshack.us/img13/5541/picturemhy.jpg

আমি কি ডাবল ট্যাবটির আউটপুটটি অন্যদিকে যেমন পাইপ করতে পারি, এর মতো grep? আমি একটি সম্পর্কিত পোস্ট পেয়েছি , তবে এটিকে গ্রেপ করার জন্য এটি কীভাবে প্রয়োগ করা যায় তা এখনও নিশ্চিত নই।


আপনি ঠিক কীভাবে কল্পনা করতে পারেন যে আপনি grepরেজেক্সে প্রবেশ করবেন ? (y or n or g[rep])? আমি হতাশাবোধবাদী শব্দটিকে ঘৃণা করি, তবে আমি সন্দেহ করি এটি ব্যাশ কোডে যুক্ত না করে এটি করা যেতে পারে।
কেভিন

উত্তর:


21

কমান্ড ব্যবহারের জন্য compgen -c:

$ compgen -c bas
basename
base64
bashbug
bash
basename
base64
bashbug

এই আউটপুট আপনি কেবল মাধ্যমে পাইপ করতে পারেন grep


কমান্ডের জন্য +1 ... পরবর্তী আকর্ষণীয় অংশটি এটির জন্য কী-বোর্ড শর্টকাট তৈরি করতে পারে।
rozcietrzewiacz

3

আমি একটি স্ক্রিপ্ট যা আমি নামক নির্মিত @ নিরাপত্তা এর উত্তর ভিত্তিক compএবং সঞ্চিত ~/bin/compযে অনুসন্ধানসমূহ commands', aliasesএবং builtins, (বিকল্প পতাকা -cabদেখতে ব্যাশ মানুষ এন্ট্রি যা, বর্তমান, পাইপ আউটপুট একটি ঐচ্ছিক দ্বিতীয় প্যারামিটারটি সঙ্গে), grepএবং অনুসন্ধান দ্বিতীয় প্যারামিটার

Usage: comp string [keyword-for-grep]

কোড:

#!/bin/bash

if [ -z "$1" ]; then
    echo usage: comp string [keyword-for-grep]
    echo 
    exit
fi

if [ -z "$2" ]; then
    compgen -cab -- $1
    exit
fi

compgen -cab -- $1 | grep -i $2

ব্যক্তিগতভাবে আমি স্ক্রিপ্টের শেল ইতিহাস থেকে শেষ কমান্ডটি সরিয়ে দেওয়ার কোনও উপায় খুঁজে বের করতে আগ্রহী (কিছু সম্পর্কিত history -d) যাতে bashইতিহাস অনুসন্ধান করার সময় আমি compএন্ট্রিগুলি খুঁজে না পাই । আমি জানি আমি এটি দিয়েও করতে পারি HISTIGNOREতবে লিনাক্স বেশ শক্তিশালী তাই স্ক্রিপ্ট ফাইল থেকে এটি করারও একটি উপায় থাকতে হবে - ঠিক?


1
অবশ্যই আপনি আপনার প্রয়োজন অনুসারে এটি সামঞ্জস্য করতে পারেন তবে এটি আপনাকে শুরু করা উচিত।
চিহ্নিত করুন

-3

আপনি যা খুঁজছেন তা কেন খুঁজে পাচ্ছেন না?

উদাহরণ:

find / -name ec2* -executable -type f -perm -og+rx -print

আপনার ব্যবহারের বিষয়টি জেনে আমি আরও বিস্তারিত কমান্ড উদাহরণ তৈরি করতে পারি।


2
অন্য কথায় আপনি বাশের সম্পূর্ণরূপে যা কিছু করেন তা প্রতিস্থাপন করতে পারেন। অবশ্যই, তবে এটি ব্যবহারিক নয় এবং প্রশ্নটি কী তা নয়।
গিলস 'দুষ্ট হওয়া বন্ধ করুন'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.