বর্ণযুক্ত গ্রেপ - হাইলাইট করা মিলগুলি সহ পুরো ফাইলটি দেখছে


509

আমি grepএর --color=alwaysপতাকাটি অত্যন্ত দরকারী বলে মনে করি। তবে, গ্রেপ শুধুমাত্র মিলগুলির সাথে লাইনগুলি মুদ্রণ করে (যদি আপনি প্রসঙ্গের লাইনগুলি না চান)। প্রদত্ত প্রতিটি লাইনের সাথে একটি মিল রয়েছে তা দেওয়া হাইলাইটিংয়ে যতটা সম্ভব ক্ষমতা যোগ করা যায় না।

আমি সত্যিই catএকটি ফাইল করতে চাই এবং হাইলাইট করা প্যাটার্নের মিলগুলি সহ পুরো ফাইলটি দেখতে চাই ।

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


1
যদি আপনি একাধিক প্যাটার্নের জন্য একাধিক রঙ চান (যেমন ত্রুটি, সতর্কতা, তথ্য, ইত্যাদি বার্তা), ব্যবহার করুনsedsedসমাধান (30 সম্পর্কে আপনি যে অক্ষরগুলি 60 সম্পর্কে অক্ষর আছে পরিবর্তে) যোগ জটিলতা খরচে আপনি একাধিক রং পায়।
ট্রেভর বয়ড স্মিথ

সঙ্গে sed আপনি এমনকি করতে পারেন + + আগমন প্রস্থান কোড হাইলাইট : উদাহরণ দেখতে askubuntu.com/a/1200851/670392
নোয়াম Manos

উত্তর:


797

এটি করার কিছু উপায় এখানে রয়েছে:

grep --color -E 'pattern|$' file
grep --color 'pattern\|$' file
egrep --color 'pattern|$' file

152
যে | $ কৌশলটি পরিষ্কার! ভাল হয়েছে, আমি এটা মনে রাখতে হবে। আপনারা যারা নিয়মিত প্রকাশের জ্ঞান নন, তাদের জন্য "প্যাটার্ন | $" এমন লাইনগুলির সাথে মেলে যা আপনি যে প্যাটার্নটি সন্ধান করছেন এবং যে রেখাগুলির শেষ রয়েছে - এটি সমস্ত কিছুই। যেহেতু একটি লাইনের শেষটি আসলে কোনও অক্ষর নয়, আউটপুটটির বর্ণযুক্ত অংশটি কেবল আপনার প্যাটার্ন হবে। ধন্যবাদ রায়ান!
zslayton

55
: আপনি "$" বাদ পারেন egrep --color "pattern|" file(ক্রেডিট stackoverflow.com/a/7398092/50979 )
13ren

15
@ জ্যাক, "" | অপারেটর একটি ওআর অপারেটর, কোনও
এএনডি

16
@ জবয়, আমি বুলিয়ান লজিকের পরিবর্তে প্রচলিত ইংরাজী পদ্ধতিতে 'এবং' ব্যবহার করছিলাম। আপনি সঠিক, এটি প্রকৃতপক্ষে একটি 'বা' অপারেটর - এটি এই এবং এটির সাথে মেলে। : পি ভাল ব্যাখ্যা।
zslayton

12
এটি প্রদর্শিত হয় যে একাধিক প্যাটার্নের সাথে মিলে গেলে "$" প্রয়োজন। egrep --color "pattern1|pattern2|$"। অন্যথায় রঙ হাইলাইটিং ঘটে না।
জায়েস্টার

91

একই লাইন বরাবর এখানে কিছু। সম্ভাবনাগুলি হ'ল, আপনি যেভাবেই কম ব্যবহার করবেন তাই এটি ব্যবহার করে দেখুন:

less -p pattern file

এটি প্যাটার্নটি হাইলাইট করবে এবং ফাইলের এটির প্রথম উপস্থিতিতে যাবে।


4
পাইপিং (স্ট্ডিং থেকে পড়া) ব্যবহার করেও কাজ করে -:… | less -p pattern -
পিএইচকে


এছাড়াও, -iবিকল্পটি যুক্ত করা ম্যাচের ক্ষেত্রেটিকে সংবেদনশীল হিসাবে তৈরি করবে less -ip pattern file
স্টিভ

... এবং যদি এএনএসআই রঙিন ইনপুটগুলিতে পাইপিং করা হয় lessতবে -Rস্যুইচটি সরবরাহ করুন:… | less -Rip introduction -
আব্দুল

48

আমি এসিকে সুপারিশ করতে চাই - প্রোগ্রামারগুলির জন্য গ্রেপ, একটি পাওয়ার অনুসন্ধান সরঞ্জামের চেয়ে ভাল

$ ack --color --passthru --pager = "$ {পৃষ্ঠা: -বিহীন -আর}" প্যাটার্ন ফাইলগুলি
$ ack --color --passthru প্যাটার্ন ফাইল | কম -আর
$ ACK_PAGER_COLOR = "$ AG পৃষ্ঠা: -বিহীন -আর}" রফতানি করুন
$ ack --passthru প্যাটার্ন ফাইলগুলি

আমি এটি পছন্দ করি কারণ এটি ডিরেক্টরিগুলির পুনরাবৃত্ত অনুসন্ধানে ডিফল্ট হয় (এবং এর চেয়ে বেশি স্মার্ট হয় grep -r), পুরো পার্ল নিয়মিত এক্সপ্রেশনকে সমর্থন করে (পসিক্সিশের পরিবর্তে regex(3)) এবং অনেকগুলি ফাইল অনুসন্ধান করার সময় অনেক ভাল প্রসঙ্গ প্রদর্শন প্রদর্শন করে।


2
যাইহোক, সময়ে সময়ে, এটি অবশ্যই সেখানে থাকতে হবে আমি যখন চাই তা সন্ধান করে না। ackস্মার্ট, তবে কখনও কখনও স্মার্ট এবং এটি যে ধরণের ফাইলটি ছিল তাতে এটি বাদ দেয়
মাইকেল পিফেল

4
@ এমপিআই ack -aসমস্ত ফাইলের প্রকারগুলি অনুসন্ধান করবে, যখন এখনও .git/ .svn/ইত্যাদি বাদ
দিবে

1
তবে এটি দুর্দান্ত যে ackআমার চিত্রগুলি অনুসন্ধান করে না, তাই -aখুব বেশি করে does আমি --type-set=freemarker=.ftlআমার যুক্ত ~/.ackrc, একটি উদাহরণ দিতে।
মাইকেল পিফেল

3
কয়েকটি কনফিগার টুইটের মাধ্যমে গ্রেপ ইতিমধ্যে এস্কের যা কিছু করে তা দ্রুত করে তোলে এবং কখনও কখনও এসকের শ্বেতলিস্টের মতো ফলাফলও বাদ দেয় না। সম্ভবত আপনার পছন্দসই গ্রেপ সেটিংস .bashrc এ সংরক্ষণ করুন। মাইন পড়ে: ফাংশন জিআরপি () {জিআরপি_ওপিশনস = "- আরআই - কালার - এক্সক্লুড-ডির = \। গিট - এক্সক্লুড = ট্যাগগুলি" গ্রেপ "$ @"
জোনাথন হার্টলে

22

আপনি আমার highlightস্ক্রিপ্টটি https://github.com/kepkin/dev-shell-essentials থেকে ব্যবহার করতে পারেন

এটির চেয়ে ভালgrep কারণ আপনি প্রতিটি ম্যাচকে তার নিজস্ব রঙ দিয়ে হাইলাইট করতে পারেন ।

$ command_here | highlight green "input" | highlight red "output"

গিথুব প্রকল্পের স্ক্রিন শট


3
প্রশ্নটি স্পষ্টভাবে ব্যবহার করে সমাধানের জন্য জিজ্ঞাসা করেছিল grep, যা * নিক্সে চালিত মেশিনগুলির একটি স্ট্যান্ডার্ড ইউটিলিটি।
zslayton

1
এই স্ক্রিপ্টটি ভাল, তবে coloutঅন্য উত্তরে উল্লিখিত হিসাবে ভাল নয় ।
জোনাথন হার্টলি 21

@ জোনাথান হার্টলি এবং কেন এমন হয়? আমি এর কোন কারণ দেখছি না। তদ্ব্যতীত, এই স্ক্রিপ্টটি তুলনায় অনেক বেশি সহজ বাস্তবায়ন ব্যবহার করে colout, যা যদি আপনি এটি পরীক্ষা করে দেখতে চান তবে ভাল।
হ্যালো গুডবাই

@ হেলো গুডবাই হ্যাঁ, যথেষ্ট যথেষ্ট। আমার রায় রাখা উচিত। কলআউটটি আরও পুঙ্খানুপুঙ্খ এবং শক্তিশালী, তবে আপনি ঠিক বলেছেন যে এটি যথাযথভাবে ব্যবহার এবং বিপরীত প্রকৌশলী আরও জটিল।
জোনাথন হার্টলে

@ জোনাথান হার্টলি এটি বোঝা যায় যে এটি আরও শক্তিশালী!
হ্যালো গুডবাই

19

আপনি একটি নামও তৈরি করতে পারেন। আপনার .bashrc এ এই ফাংশনটি জুড়ুন (বা ওক্সের উপর .bash_profile)

function grepe {
    grep --color -E "$1|$" $2
}

আপনি এখন এর মতো উপনামটি ব্যবহার করতে পারেন: " ifconfig | grepe inet" বা " grepe css index.html"।

(পিএস: source ~/.bashrcবর্তমান সেশনে বাশার্ক পুনরায় লোড করতে ভুলবেন না )


যদি এটি আপনার সিস্টেমে পাওয়া যায় তবে আপনি ঠিক ব্যবহার করতে পারেন egrep।
টম

1
এর ফলাফলটি পাইপ করাতে কম রঙিন তথ্য হারাবে। আপনি কীভাবে এটি প্রতিরোধ করবেন?
কনার ক্লার্ক

5
@ গরমের --color=alwaysপরিবর্তে ব্যবহার করুন--color
লম্পট_চিম্প

3
এবং, lessবর্ণ কোডগুলি ব্যাখ্যার জন্য ব্যবহার করুন less -R
এলিয়াহ কাগন

Qu 2 এর অকালীন ব্যবহার ফাঁকা নিরাপদ নয়। ব্যাশে আমি বরং ফাংশন গ্রেপ () {লোকাল প্যাটার্ন = "$ 1" শিফট egrep - রঙ "$ প্যাটার্ন | ^" "$ @" do ফর্ম্যাটিং মেসের জন্য দুঃখিত।
রবার্ট ক্লেমে

16

coloutপ্রোগ্রামটি ব্যবহার করুন : http://nojhan.github.io/colout/

এটি কোনও পাঠ্য প্রবাহে রঙের হাইলাইট যুক্ত করার জন্য ডিজাইন করা হয়েছে। একটি রেজেক্স এবং একটি রঙ দেওয়া (যেমন "লাল"), এটি হাইলাইট করা মিলগুলি সহ একটি পাঠ্য প্রবাহকে পুনরুত্পাদন করে। উদাহরণ:

# cat logfile but highlight instances of 'ERROR' in red
colout ERROR red <logfile

একাধিক ভিন্ন রঙের হাইলাইটগুলি যুক্ত করতে আপনি একাধিক অনুরোধের শৃঙ্খল রাখতে পারেন:

tail -f /var/log/nginx/access.log | \
    colout ' 5\d\d ' red | \
    colout ' 4\d\d ' yellow | \
    colout ' 3\d\d ' cyan | \
    colout ' 2\d\d ' green

অথবা এন গ্রুপগুলির সাথে একটি রেজেেক্স ব্যবহার করে (রেজেক্সের প্রথম বন্ধনীযুক্ত অংশ), তার পরে এন বর্ণগুলির একটি কমা দ্বারা পৃথক করা তালিকা ব্যবহার করে আপনি একই জিনিস অর্জন করতে পারেন।

vagrant status | \
    colout \
        '\''(^.+  running)|(^.+suspended)|(^.+not running)'\'' \
        green,yellow,red

1
অন্য কোথাও উল্লিখিত হিসাবে, প্রশ্নটি স্পষ্টভাবে গ্রেপ ব্যবহার করে সমাধানের জন্য জিজ্ঞাসা করেছিল, যা * নিক্স চলমান মেশিনগুলির একটি আদর্শ ইউটিলিটি।
zslayton

4
@ জ্যাক ঠিক আছে, দুঃখিত। আসলে, আপনি যদি সমস্যাটি এর বাইরেও grepপ্রসারিত করেন এবং উত্তরগুলিতে এটি ইতিমধ্যে প্রসারিত হয় তবে আপনার coloutসমস্যার জন্য সর্বোত্তম সমাধান হ'ল সবচেয়ে ভাল যা আমি সচেতন। ইউনিক্স দর্শনের মতে একটি কাজ ভাল করার জন্য প্রোগ্রাম লিখতে হবে। জন্য grepএটা টেক্সট প্রবাহ ফিল্টারিং করা হয়। জন্য coloutএটা colorizing বা পাঠ্য প্রবাহ হাইলাইট করা হয়।
ব্যবহারকারী2683246

এটি সেরা উত্তর, কারণ এটি একাধিক বিভিন্ন বর্ণের হাইলাইট প্রয়োগ করতে পারে এবং coloutএটি একটি বহুল-কার্যকর সরঞ্জাম। এটি একবার শিখুন, লগফাইলে হাইলাইট করার জন্য একটি সরঞ্জাম শিখার পরিবর্তে, পরীক্ষার আউটপুট হাইলাইট করার জন্য অন্য একটি সরঞ্জাম শেখার চেয়ে এটি অনেক পরিস্থিতিতে ব্যবহার করুন
জোনাথন হার্টলি

9

আমি "লিনাক্স সার্ভার হ্যাকস", ও'রেলি থেকে আরসিজি ব্যবহার করি। এটি আপনি যা চান তার জন্য এটি নিখুঁত এবং বিভিন্ন বর্ণের সাথে একাধিক অভিব্যক্তি হাইলাইট করতে পারে।

#!/usr/bin/perl -w
#
#       regexp coloured glasses - from Linux Server Hacks from O'Reilly
#
#       eg .rcg "fatal" "BOLD . YELLOW . ON_WHITE"  /var/adm/messages
#
use strict;
use Term::ANSIColor qw(:constants);

my %target = ( );

while (my $arg = shift) {
        my $clr = shift;

        if (($arg =~ /^-/) | !$clr) {
                print "Usage: rcg [regex] [color] [regex] [color] ...\n";
                exit(2);
        }

        #
        # Ugly, lazy, pathetic hack here. [Unquote]
        #
        $target{$arg} = eval($clr);

}

my $rst = RESET;

while(<>) {
        foreach my $x (keys(%target)) {
                s/($x)/$target{$x}$1$rst/g;
        }
        print
}


6

আমি এটি আমার .বাশ_লিয়াসগুলিতে যুক্ত করেছি:

highlight() {
  grep --color -E "$1|\$"
}

3

পুরো ফাইলটি দেখার সময় নিদর্শন হাইলাইট করতে h করতে এই কাজটি করতে পারে।

এছাড়াও এটি বিভিন্ন ধরণের জন্য বিভিন্ন রঙ ব্যবহার করে uses

cat FILE | h 'PAT1' 'PAT2' ...

আপনি আউটপুট পাইপ করতে hপারেনless -R ভাল পড়ার জন্য।

প্রতিটি প্যাটার্নের জন্য 1 টি রঙ গ্রেপ করতে এবং ব্যবহার করতে , cxpgrep ভাল ফিট হতে পারে।


1

ঠিক আছে, এটি একটি উপায়,

wc -l filename

আপনাকে লাইন গণনা দেবে - এনএন বলুন, তবে আপনি এটি করতে পারেন

grep -C NN --color=always filename

3
"-C 2147483647" যদি আপনি প্রথমে ডব্লিউসি না চান। এখানে প্রচুর সংখ্যা ব্যবহার করা জিনিসগুলিকে ধীর করে দেখায় না।
ব্যারিকার্টার

1

এখানে একটি শেল স্ক্রিপ্ট যা উওকের জিএসব ফাংশনটি আপনি যে পাঠ্যটি সন্ধান করছেন তা প্রতিস্থাপনের জন্য যথাযথ পালানোর ক্রমটি উজ্জ্বল লালতে প্রদর্শন করতে ব্যবহার করে:

#! /bin/bash
awk -vstr=$1 'BEGIN{repltext=sprintf("%c[1;31;40m&%c[0m", 0x1B,0x1B);}{gsub(str,repltext); print}' $2

এটি এর মতো ব্যবহার করুন:

$ ./cgrep pattern [file]

দুর্ভাগ্যক্রমে, এটিতে গ্রেপের সমস্ত কার্যকারিতা নেই।

আরও তথ্যের জন্য, আপনি লিনাক্স জার্নালে " আপনার পছন্দ মতো রঙ " নিবন্ধটি পড়তে পারেন


1

আর একটি উত্তরে গ্রেপের সিএন সুইচের উল্লেখ করা হয়েছে যার সাথে প্রসঙ্গে এন লাইন রয়েছে। আমি কখনও কখনও এন = ৯৯ এর সাথে দ্রুত এবং নোংরা উপায় হিসাবে [কমপক্ষে] প্রেক্ষাপটের স্ক্রিনফুল হিসাবে উপস্থিত করি যখন যখন এনগ্রিপ প্যাটার্নটি খুব স্পষ্টভাবে মনে হয়, বা যখন আমি এমন কোনও মেশিনে থাকি যেখানে আমি আরসিজি ইনস্টল করি না এবং / অথবা সিসি।

আমি সম্প্রতি আবিষ্কার করেছি cczeযা একটি আরও শক্তিশালী রঙিনাইজার। আমার একমাত্র অভিযোগটি হ'ল এটি স্ক্রিন-ভিত্তিক (যেমন less, যা আমি কখনই সে কারণ হিসাবে ব্যবহার করি না) যদি না আপনি "কাঁচা এএনএসআই" আউটপুটটির জন্য -A স্যুইচটি নির্দিষ্ট না করেন।

rcgউপরে উল্লিখিত জন্য +1 । এটি এখনও আমার প্রিয়, যেহেতু এটি একটি উপাধিতে কাস্টমাইজ করা এত সহজ। এরকম কিছু সাধারণত আমার ~ / .Bashrc এ থাকে:

ওরফে লেজ = 'পুচ্ছ -f / আমার / অ্যাপ / লগ / ফাইল | আরসিজি "বোল্ড গ্রীন" প্রেরণ করুন "সায়ান" ত্রুটি "রেড" "


1

আরেকটি নোংরা উপায়:

grep -A80 -B80 --color FIND_THIS IN_FILE

আমি একটি করেছি

alias grepa='grep -A80 -B80 --color'

বাশার্কে


1
আপনি যে জিনিসগুলির সন্ধান করছেন তা সেখানে না থাকলে এটি সমস্যাযুক্ত। কোনও ত্রুটির কারণে বলুন, এক্ষেত্রে আপনি কিছুই পাবেন না।
পল রুবেল


0

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

বেসিক ব্যবহার:

echo warn error debug info 10 nil | colog

একটি কী টিপে চলার সময় আপনি নিদর্শন এবং রং পরিবর্তন করতে পারেন এবং তারপরে কী প্রবেশ করতে পারেন।


0

আমি অনুরূপ উদ্দেশ্যে নিম্নলিখিত কমান্ড ব্যবহার করি:

grep -C 100 searchtext file

এটি হাইলাইটেড অনুসন্ধানের পাঠ্যের আগে এবং পরে প্রবন্ধের 100 * 2 টি লাইন প্রিন্ট করতে গ্রেপ বলবে।


0

@ কেপকিনের সমাধান থেকে অনুপ্রাণিত আমার এ পদ্ধতিটি এখানে :

# Adds ANSI colors to matched terms, similar to grep --color but without
# filtering unmatched lines. Example:
#   noisy_command | highlight ERROR INFO
#
# Each argument is passed into sed as a matching pattern and matches are
# colored. Multiple arguments will use separate colors.
#
# Inspired by https://stackoverflow.com/a/25357856
highlight() {
  # color cycles from 0-5, (shifted 31-36), i.e. r,g,y,b,m,c
  local color=0 patterns=()
  for term in "$@"; do
    patterns+=("$(printf 's|%s|\e[%sm\\0\e[0m|g' "${term//|/\\|}" "$(( color+31 ))")")
    color=$(( (color+1) % 6 ))
  done
  sed -f <(printf '%s\n' "${patterns[@]}")
}

এটি একাধিক যুক্তি গ্রহণ করে (তবে আপনাকে রঙগুলি কাস্টমাইজ করতে দেয় না)। উদাহরণ:

$ noisy_command | highlight ERROR WARN

-1

ম্যাচ আছে কিনা তা বিবেচনা না করে আমি পঠনরত প্রতিটি লাইন মুদ্রণের জন্য গ্রিপকে বলতে পারি যে কোনও উপায় আছে?

অপশন -C999সব প্রসঙ্গ লাইন প্রদর্শন করার জন্য একটি বিকল্প অভাবে কৌতুক করতে হবে। বেশিরভাগ অন্যান্য গ্রেপ রূপগুলিও এটি সমর্থন করে। যাইহোক: 1) কোনও মিল না পাওয়া গেলে কোনও আউটপুট উত্পাদিত হয় না এবং 2) এই বিকল্পটি গ্রেপের কার্যক্ষমতাতে নেতিবাচক প্রভাব ফেলে: -Cমানটি বড় হলে এই গ্রন্থের জন্য রেফারেন্সের কোন রেখা নির্ধারণের জন্য অনেকগুলি রেখা অস্থায়ীভাবে মেমরিতে সংরক্ষণ করতে হতে পারে একটি ম্যাচ ঘটে যখন প্রদর্শন করতে। নোট করুন যে গ্রেপ বাস্তবায়নগুলি ইনপুট ফাইলগুলি লোড করে না বরং কয়েকটি লাইন পড়ে বা ইনপুটটির উপর একটি স্লাইডিং উইন্ডো ব্যবহার করে। কোনও মিল খুঁজে পাওয়া গেলে পরে "পূর্বে" প্রসঙ্গের লাইনগুলি আউটপুট দিতে প্রসঙ্গে "অংশের আগে" একটি উইন্ডোতে রাখা উচিত (স্মৃতি)।

যেমন ^|PATTERNবা PATTERN|$এটির জন্য কোনও খালি-ম্যাচ করা উপ-প্যাটার্ন [^ -~]?|PATTERNযেমন একটি প্যাটার্ন একটি দুর্দান্ত কৌশল। তবে, ১) এই নিদর্শনগুলি প্রসঙ্গ হিসাবে হাইলাইট না করে মিলে যাওয়া লাইনগুলি দেখায় না এবং ২) এটিকে কিছু অন্যান্য গ্রেপ বিকল্পের সাথে সংমিশ্রণে ব্যবহার করা যায় না, যেমন -Fএবং-w উদাহরণস্বরূপ।

সুতরাং এই পদ্ধতির কোনওটিই আমার সন্তুষ্ট নয়। আমি রঙিন-হাইলাইটেড কনটেক্সট লাইন হিসাবে সমস্ত মিলহীন আউটপুটকে-y দক্ষতার সাথে প্রদর্শন করার জন্য ইউগ্রিপ এবং বর্ধিত গ্রেপ ব্যবহার করছি । অন্যান্য গ্রেপ-জাতীয় সরঞ্জাম যেমন এজি এবং রিগ্রগ্রাইপগুলিও একটি পাস-থ্রো বিকল্প দেয়। কিন্তু ugrep গনুহ / বাসদ, grep এবং অফার মত, grep বিকল্প একটি সুপারসেটও সঙ্গে সামঞ্জস্যপূর্ণ -yএবং -Q। উদাহরণস্বরূপ, এখানে বিকল্পগুলি (প্যাটার্নগুলি প্রবেশের জন্য ইন্টারেক্টিভ ক্যোয়ারী ইউআই) -yসংযুক্ত করার সময় কী বিকল্প দেখায় -Q:

ugrep -Q -y FILE ...

কোন মন্তব্য না করে এটিকে কেন ভোট দেবেন? বিকল্প গ্রেপ সরঞ্জামগুলি উল্লেখ করা ন্যায্যতার চেয়ে বেশি, অন্যান্য উত্তরগুলির মতো কিছু।
ডাঃ অ্যালেক্স আর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.