প্রশ্ন লিনাক্স কমান্ড লাইন সেরা অনুশীলন এবং টিপস?


আমি আপনার লিনাক্স কমান্ড লাইন (সিএলআই) ভাল অনুশীলন এবং টিপস সংগ্রহ করব এমন একটি আলোচনা খুলতে চাই।

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

আমি আশা করি আমরা সবাই এই থেকে শিখতে পারি।

আপনার বাশ টিপস, grep, sed, AWK, / proc এবং অন্যান্য সমস্ত সম্পর্কিত লিনাক্স / ইউনিক্স সিস্টেম প্রশাসনের শেল প্রোগ্রামিং আমাদের সকলের উপকারের জন্য সেরা অনুশীলনগুলি ভাগ করে নেওয়ার জন্য আপনাকে স্বাগতম।


112
2018-03-02 21:23


উত্স


কেন শুধু লিনাক্স? ইউনিক্স প্রায় সব স্বাদে অনেক টিপস দরকারী হতে পারে। - mouviciel
এই প্রশ্নটি একটি বিস্তৃত হতে পারে - সম্পূর্ণ বইগুলি পূরণ করতে লিনাক্স / ইউনিক্স কমান্ড লাইনের সর্বোত্তম অনুশীলনগুলিতে যথেষ্ট আছে ... - Jonik
আমি সম্মত যে ইউনিক্স টিপস যা লিনাক্সে প্রয়োগ করা যেতে পারে, সেগুলিও খুব বেশি স্বাগত জানাই, কারণ আমি লিনাক্স লিখেছি কারণ এটাই আমরা এখানে দিয়ে কাজ করি। বি। কারণ এটি সাম্প্রতিক বছরগুলিতে ইউনিক্সের চেয়ে আরও বিস্তৃত জনসাধারণের এক্সপোজার অর্জন করছে। - Maxim Veksler
আমি মনে করি এটি ব্যবহার করা সবচেয়ে দরকারী এবং আকর্ষণীয় কমান্ডগুলির একটি তালিকা অনুকরণ করা একটি দুর্দান্ত ধারণা।
এই প্রাসঙ্গিক কোন? refspecs.freestandards.org


উত্তর:


ব্যবহার পর্দা, একটি ফ্রি টার্মিনাল মাল্টিপ্লেক্সার যা GNU প্রোজেক্ট দ্বারা উন্নত হয়েছে যা আপনাকে একাধিক টার্মিনাল সরবরাহ করতে দেয়।

আপনি একটি সেশন শুরু করতে পারেন এবং সংযোগ হারিয়ে গেলেও আপনার টার্মিনালগুলি সংরক্ষণ করা হবে, যাতে আপনি পরে বা বাড়ির মাধ্যমে পুনরায় শুরু করতে পারেন।


111
2018-03-02 22:52



একাধিক লগইন থেকে একই স্ক্রীন সেশন দেখার জন্য আমার শেষ স্ক্রীন সেশনটি বিচ্ছিন্ন করার এবং পুনরায় শুরু করার জন্য 'স্ক্রীন-ডি-আর' ব্যবহার করা সবচেয়ে সাধারণ সুইচ এবং 'স্ক্রীন-এক্স'। এছাড়াও, নিজেকে একটি সুন্দর। স্ক্রিনআরসি পেতে dotfiles.org/.screenrc - Nick Devereaux
স্ক্রিন সম্পর্কে আরেকটি চমৎকার জিনিস হল যে আপনি স্ক্রীন-এক্স ব্যবহার করে কিছুতে সহযোগিতা করতে চাইলে অন্য লোকেদের সাথে একটি টার্মিনাল ভাগ করতে পারেন - gareth_bowles


, SSH!
এসএসএইচ কমান্ড কমান্ড - আমি মনে করি এটি শেখার সবচেয়ে বেশি মূল্যবান। বিকল্পগুলি বেশ কঠিন হতে পারে, কিন্তু মনে হচ্ছে আমি এসএসএইচ-এর জন্য নতুন কমান্ড-লাইন বিকল্পগুলি ব্যবহার করতে শিখছি যা আমি কখনও ভাবিনি যে প্রয়োজন হবে না। আমি এই সময়ে সব তাদের ব্যবহার করতে পারে।

যত বেশি আপনি এটি ব্যবহার করবেন, তত বেশি আপনি এটি সম্পর্কে শিখবেন। আপনি কিছু অ্যামেজিং জিনিস এটি ব্যবহার করতে পারেন।

দ্রষ্টব্য: এসএসএস সার্ভার চলমান ছাড়া আপনার সার্ভারে কোনও সেটআপ ছাড়াই এই সমস্ত জিনিসগুলি দূরবর্তীভাবে কার্যকর করা যায়।

ইন্টারনেটে একটি ফাইল সিস্টেম মাউন্ট করুন 

SSHFS এর জন্য নেট অনুসন্ধান করুন

ফরওয়ার্ড আদেশ

এসভিএন + এসএসএইচ প্রোটোকলটি কোন দূরবর্তী ক্লায়েন্ট থেকে সার্ভারে কোনও ডায়মন চলছে না! SVN কমান্ড ssh শেলের মাধ্যমে সার্ভার আরম্ভ করে এবং বিদ্যমান পাইপের মধ্য দিয়ে তথ্যটি আবার পাস করে। Rsync প্রোগ্রাম একই জিনিস করে, এসএসএইচ এর মাধ্যমে নিজেই সূচনা করে কোনও rsync deamon সহ সার্ভারের বিরুদ্ধে রান করে। অনুরূপ কৌশলগুলি করতে আপনার নিজের ব্যাশ ফাইলগুলি লেখার পক্ষে সহজ।

চেইন ফায়ারওয়াল মাধ্যমে পেতে 

আমি আমার ম্যাকের বাড়িতে আমার লিনাক্স সার্ভারের মাধ্যমে লাফানোর জন্য এই সব সময় ব্যবহার করি।

ফরওয়ার্ড পোর্ট:
যতক্ষণ না আপনি বুঝতে পারেন যে আপনি আপনার বাড়ির ফায়ারওয়ালের মাধ্যমে বাউন্স করতে পারেন এবং আপনার ঘরে ঘরে ঘরে বসে রাউটারকে কনফিগার করতে পারেন তখনই কেবলমাত্র মাঝারি সুবিধাজনক মনে হয়)।

ফরওয়ার্ড এক্স অনুরোধ: 

এটি অন্য একটি আশ্চর্যজনক। আপনার দূরবর্তী সিস্টেমে চলমান X সার্ভারের সাথে বা ছাড়া, আপনি একটি এক্স-উইন্ডোজ প্রোগ্রাম চালাতে পারেন এবং আপনার স্থানীয় পর্দায় উইন্ডোটি প্রদর্শিত হবে। শুধু সুইচ এক্স ব্যবহার করুন, যে সব!

যেহেতু আপনার কাছে আপনার রিমোট সার্ভারে X সার্ভার চলছে না, তাই আপনার সার্ভারে CPU প্রভাব কম, আপনার TINY লিনাক্স সার্ভার থাকতে পারে যা আপনার শক্তিশালী গেম পিসি উইন্ডোজ এবং সিগুইন / এক্স চালানোর জন্য বিশাল অ্যাপ্লিকেশনগুলি সরবরাহ করে।

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

ব্যাচ ফাইল চালান 

(অর্থাত অন্যান্য সিস্টেমগুলিতে "স্টাফ করা" একটি স্থানীয় ব্যাচ ফাইল চালান):

দুই জিনিস এই এক শীতল করতে একত্রিত। একটি আপনি (আরও নিরাপদ) এনক্রিপশন কী ব্যবহার করে পাসওয়ার্ড প্রম্পটগুলি বাদ দিতে পারেন। দ্বিতীয়টি আপনি SSH CLI এ একটি কমান্ড নির্দিষ্ট করতে পারেন। আমি কিছু আকর্ষণীয় উপায়ে এটি ব্যবহার করেছি - যখন একটি কম্পাইল রিমোট সার্ভারে ব্যর্থ হয়, তখন আমার কম্পিউটারে এটি SSH থাকবে এবং একটি সাউন্ড ফাইল চালাবে)।

মনে রাখবেন আপনি রিমোট কমান্ড থেকে আউটপুটটি পুনঃনির্দেশিত করতে পারেন এবং এটি আপনার স্থানীয় ব্যাচ ফাইলের মধ্যে ব্যবহার করতে পারেন, যাতে আপনি স্থানীয়ভাবে আপনার সার্ভারে চলমান কম্পাইলটিও টেনে আনতে পারেন।

ম্যাক নির্মিত

উভয় সার্ভার এবং ক্লায়েন্ট উভয় ম্যাক এবং লিনাক্স মধ্যে নির্মিত হয়। ম্যাক এবং উবুন্টুর ক্ষেত্রে, একটি সার্ভার সক্ষম করা সঠিক চেকবক্সটি খোঁজার মতো সহজ।

একটি পিসিতে সিগুইন বা সাইগুইন / এক্স (সিগুইন / এক্স আপনাকে আপনার লিনাক্স মেশিন থেকে আপনার উইন্ডো-পিসি থেকে এক্স-উইন্ডো আউটপুট ফরওয়ার্ড করার অনুমতি দেবে - এটি একটি এক্স সার্ভার ইনস্টল করবে)

গুরুত্বপূর্ণ টিপস / কনফিগার ফাইল

আপনার ফায়ারওয়ালে ২২ পোর্ট ব্যবহার করবেন না। আপনি হ্যাক প্রচেষ্টা অনেক পাবেন, এটা ঠিক এর মূল্য নেই। শুধু আপনার সার্ভারে একটি ভিন্ন পোর্ট ফরওয়ার্ড আপনার ফায়ারওয়াল আছে।

ব্যাপক কনফিগারেশন বিকল্পগুলি রয়েছে যা আপনাকে আপনার ssh কমান্ডগুলি উল্লেখযোগ্যভাবে সরল করার অনুমতি দেয়। এখানে কাজ খনি একটি উদাহরণ:

Host home
    hostname billshome.hopto.org
    Port=12345
    user=bill
    LocalForward=localhost:1025 mac:22

যখন আমি "ssh home" টাইপ করি (অন্য কিছু না), তখন আমি এটি টাইপ করে থাকি:

ssh -p 12345 bill@billshome.hopto.org

এবং তারপরে আমার স্থানীয় পোর্ট 1025 আমার সিস্টেমে "ম্যাক" বাড়িতে। এর কারণ হল আমার কাছে আমার ফাইলটিতে আরেকটি এন্ট্রি আছে:

Host mac
    hostname localhost
    port=1025

যেহেতু একবার আমি একটি "ssh হোম" করেছি এবং এখনও উইন্ডোটি খোলা আছে, আমি "ssh mac" টাইপ করতে পারি এবং এখানে কম্পিউটারটি কাজ করে আসলে এটি নিজের পোর্ট 1025 এ সংযোগ করার চেষ্টা করবে যা "mac: 22 "অন্য কমান্ডের মাধ্যমে, তাই এটি ফায়ারওয়ালের মাধ্যমে বাড়িতে আমার ম্যাকের সাথে সংযোগ করবে।

সম্পাদনা - শীতল স্ক্রিপ্ট!

আমি শুধু একটি পুরানো স্ক্রিপ্ট খুঁড়েছিলাম যা আমি ভালোবাসি - ফিরে আসার এবং আগ্রহী হতে পারে এমন কারো জন্য এখানে পোস্ট করতে হয়েছিল। স্ক্রিপ্ট "authMe" বলা হয়

#!/bin/bash
if [ ! -f ~/.ssh/id_dsa.pub ]
then
    echo 'id_dsa.pub does not exist, creating'
    ssh-keygen -tdsa
fi
ssh $1 'cat >>.ssh/authorized_keys' <~/.ssh/id_dsa.pub

যদি আপনার হোম ডিরেক্টরিতে এই স্ক্রিপ্ট থাকে এবং একটি হোস্ট থাকে তবে আপনি (ssh এর মাধ্যমে) সংযোগ করতে পারেন, তবে আপনি "./authMe হোস্টনাম" টাইপ করতে পারেন।

প্রয়োজন হলে এটি আপনার জন্য একটি পাবলিক / প্রাইভেট কেপয়ার তৈরি করবে, তারপর এটি অন্য মেশিনে ssh হবে এবং আপনার পাবলিক কী অনুলিপি করবে (ssh কমান্ড আপনাকে পাসওয়ার্ডের জন্য অনুরোধ করবে ...)

এর পরে, এসএমএইচ কমান্ডটি আপনার দূরবর্তী সিস্টেমের সাথে সংযুক্ত হওয়ার সাথে সাথে আপনার পাসওয়ার্ডটি আর জিজ্ঞাসা করবে না, এটি সর্বজনীন / ব্যক্তিগত কীপেইয়ার ব্যবহার করবে।

যদি আপনার রিমোট কম্পিউটার সর্বদা নিরাপদ না থাকে তবে আপনাকে যখন "প্রফেসর" প্রম্পট করার সময় বিবেচনা করা উচিত।

অতিরিক্ত নিরাপত্তার জন্য আপনি টেক্সট পাসওয়ার্ডগুলি (শুধুমাত্র কী) অনুমতি দেওয়ার জন্য দূরবর্তী দিকে ssh সার্ভার কনফিগার করতে চাইতে পারেন।


101



+1 খুব সুন্দর এবং কম্প্যাক্ট পোস্ট - Karsten
পোর্ট ২২ এর উপর এসএসএইচ-এর একটি ছোট নোট: যদি আপনার একটি ভাল রুট পাসওয়ার্ড থাকে এবং আপনার ব্যবহারকারীদের ভয়ানক পাসওয়ার্ড না থাকে তবে কেবল fail2ban (বা অনুরূপ কিছু) চালানো ক্র্যাক প্রচেষ্টাগুলি রাখা যথেষ্ট। আমি অন্য বন্দরে SSH রাখা সত্যিই বিরক্তিকর এটি পাওয়া যায়। - David Wolever
এটি মাঝে মাঝে বিরক্তিকর হতে পারে, কিন্তু সংযোগের ভলিউম মাত্র ভীতিজনক। আমি জানি যে তাদের মধ্য দিয়ে যেতে হবে না, তবে এটি আপনার মতই যদি আপনার বাড়ির দিকে হাঁটতে থাকে এবং প্রতি মিনিটে আপনার ডোকার্নব-এর সাথে ঝগড়া করে থাকে - ঠিক অযোগ্য।
এসএসএ এর বেশিরভাগ সংস্করণে আপনার শেষ কমান্ডের একটি বিল্ট-ইন সংস্করণ রয়েছে, এটি এখন বলা হয় ssh-copy-id, এবং এটা হিসাবে হিসাবে সহজ ssh-copy-id user@someserver - JamesHannah
আপনার 'ssh mac' কৌশলটি করার আরেকটি উপায় হল আপনার .ssh / config ফাইলে একটি প্রক্সি কম্যান্ড নির্দেশিকা ব্যবহার করা। হোস্ট ম্যাক ProxyCommand ssh -q হোম "nc% h% p" এটি বাড়ীতে নেটক্যাট (এনসি) চালাবে এবং আপনার এসএসএস সংযোগ সরাসরি ম্যাকের মাধ্যমে পুনঃনির্দেশিত করবে। আমি চেইনটিকে সহজ করে তুলি (উদাহরণস্বরূপ, 'ওয়ার্ক ওয়েব সার্ভার' পেতে 'হোম বুনিয়াদ' পেতে আপনাকে 'হোম' থেকে সংযোগ করতে হবে। - toppledwagon


আমি ব্যবহার করতে চান

cd -

পূর্ববর্তী ডিরেক্টরি স্যুইচ করুন। খুব দরকারী!


73



আমি এটা জানতাম না! ধন্যবাদ! সংশ্লিষ্ট নোটে, pushd এবং popd dirs এর একটি স্ট্যাক তৈরি করে অনুরূপ কিছু করবেন। এই ধরণের কৌশলগুলি যখন আপনি গভীর গভীর কাঠামোতে নেভিগেট করছেন তখন সহায়তা করে।
এই নিছক আলোকসজ্জা। - Manuel Ferreria


আমি সম্প্রতি আবিষ্কৃত করেছি pv কমান্ড (পাইপ ভিউয়ার) যা বিড়ালের মতো কিন্তু স্থানান্তর বিশদ সহ।

তাই পরিবর্তে

$ gzip -c access.log > access.log.gz

তুমি ব্যবহার করতে পার

$ pv access.log | gzip > access.log.gz
611MB 0:00:11 [58.3MB/s] [=>      ] 15% ETA 0:00:59

সুতরাং আপনার অপারেশন শেষ হবে যখন কোন ধারণা থাকার পরিবর্তে, এখন আপনি জানতে পারবেন!

পিটারস Krumins সৌজন্যে 


69



$ gzip -c access.log> access.log.gz কেন নয়: $ gzip access.log
ওহ যে কাজ করে :) আমি শুধু পিটারস ওয়েবসাইট থেকে উদাহরণ গ্রহণ। - Nick Devereaux
যে ভাল পুরানো মত দেখায় tee(1)। - Daniel C. Sobral
অত্যন্ত দরকারী ইউটিলিটি, যা আমি সর্বদা ভুলে গেছি :-( - Patrick


sudo !!

Root হিসাবে পূর্ববর্তী কমান্ডটি পুনরায় চালু করুন।

[সাইটে বর্তমান শীর্ষ কমান্ড http://www.commandlinefu.com, এই প্রশ্নের লাইন বরাবর থিমযুক্ত একটি সাইট।]


53



প্রকাশ - আমি commandlinefu.com রান - codeinthehole
এটা এই লোক 16 অক্ষর সংরক্ষিত হবে: xkcd.com/149


প্রেস জন্য Ctrl-আর এবং একটি কমান্ড (অথবা এর কোনও অংশ) টাইপ করা শুরু করুন - এটি কমান্ড ইতিহাস অনুসন্ধান করে। Ctrl-R টি আবার আঘাত করা, পরবর্তী ম্যাচে লাফ দেবে, বর্তমানে প্রদর্শিত কমান্ড চালানো হবে এবং ডান-তীরটি (অন্তত) আপনাকে প্রথমে এটি সম্পাদনা করতে দেবে।

$ (reverse-i-search)`svn': svn status

আমি লিনাক্স ব্যবহার করে 7 বছরের মত আমার প্রধান OS হিসাবে এটি শিখার আগে, কিন্তু এখন আমি এটি জানি, এটি বেশ সহজ।


46



ধন্যবাদ। আমি বিপরীত অনুসন্ধান ব্যবহার করছি, কিন্তু পরবর্তী ম্যাচে কিভাবে লাফানো যায় তা নির্ধারণ করতে সক্ষম হচ্ছি না। - Adam
Ctrl-S পরবর্তী ম্যাচে চলে আসে। আপনাকে করতে হবে stty -ixon প্রথমটি XON / XOFF প্রবাহ-নিয়ন্ত্রণটি বন্ধ করে দেওয়ার অর্থ (এটি Ctrl-Q উপলব্ধ করে দেয়, ডিফল্টরূপে এটি Ctrl-V উদ্ধৃত-সন্নিবেশের মতোই ম্যাপ করা হয় তবে আপনি এটি অন্য কিছুতে পরিবর্তন করতে পারেন)। দেখ man stty এবং man readline আরো তথ্যের জন্য। দ্য stty কমান্ড আপনার যোগ করা যেতে পারে ~/.bashrc - Dennis Williamson


কমান্ড লাইন একটি মজার জিনিস। আমি মনে করি আপনি নিজের উপর খুব বেশি কিছু শিখতে পারেন এবং অন্য যেকোন একটি কমান্ড লাইন ব্যবহার করে দুর্ঘটনা দ্বারা আপনি শিখতে পারেন।

আমি হাত ধরে ডিরেক্টরি নাম টাইপ painstakingly বছর ধরে শেল ব্যবহার করা হয়। একদিন আমি একটি সিস্টেমের উপর একটি বন্ধু জগাখিচুড়ি পর্যবেক্ষক ছিল এবং তিনি ট্যাব কী আঘাত রাখা। আমি জিজ্ঞেস করলাম, আপনি ট্যাব কেন মারছেন? উত্তর: এটি ডিরেক্টরি বা ফাইলের নাম সম্পূর্ণ করার চেষ্টা করে। কে অনুমিত হবে - ট্যাব সমাপ্তি! ফাইল বা ডিরেক্টরিটির একটি বিট টাইপ করুন, ট্যাবটি হিট করুন এবং এটি আপনার টাইপ করা সম্পন্ন করার চেষ্টা করবে (আচরণটি কোন শেলের উপর নির্ভর করে)।

একদিন, বন্ধু আমাকে কমান্ড লাইনে দেখছিল এবং আমাকে কিছু টাইপ করে দেখেছিল:

coryking@cory ~/trunk/mozi $ pushd /etc
/etc ~/trunk/mozi
coryking@cory /etc $ popd
~/trunk/mozi
coryking@cory ~/trunk/mozi $

কে অনুমান করা হবে !? তিনি সম্পর্কে জানত না popd / pushd। আমরা এমনকি হয় অনুমান ...


45



আমার কাছে ট্যাব সমাপ্তির কিছু "সুস্পষ্ট", খুব মৌলিক মত মনে হয়, তবে আমি পপড / pushd সম্পর্কে জানতাম না। সত্যিই মজার। :) - Jonik
এছাড়াও কমান্ড, ফাইল এবং ডিরেক্টরিগুলির চেয়ে অনেক বেশি ট্যাব-সম্পূর্ণ করতে এই উত্তরটি দেখুন: stackoverflow.com/questions/603696//603919#603919 - Jonik
এটা সত্যি. আমি কাউকে দেখে বাশের পশ্চাদপদ-ইতিহাস-অনুসন্ধান (ctrl-r) সম্পর্কে শিখেছি। পরে আমি বুঝতে পারলাম যে এটি একটি রেডলাইন বৈশিষ্ট্য ছিল এবং একই প্রোগ্রামেও কাজ করেছিল যা রেডলাইন (মাইএসকিউএল, জিডিবি, পাইথন-আই, ক্লিস ইত্যাদি) অন্তর্ভুক্ত করেছিল। - sigjuice
আপনি কিভাবে বছরের জন্য "শেল" ব্যবহার করতে পারে এবং ট্যাব সমাপ্তি সম্পর্কে জানেন না? - prestomation
Pushd / popd সঙ্গে ডিল করার সময় কমান্ড উল্লেখ করতে ভুলবেন না dirs। এটি pushd / popd স্ট্যাক কি দেখায়। - slm


ভিম শিখুন।

এটি (বিতর্কিতভাবে) সেরা সম্পাদক, তবে বেশিরভাগই সেরা সম্পাদক বেয়ার লিনাক্স সার্ভারে উপলব্ধ।


41



gvim উইন্ডোজ এও সেরা ফাইল ব্রাউজার;)
এটি ভিআইএম জানার পরে এটি অত্যন্ত উপকারী, আপনি বেশিরভাগ শেলগুলি ভিআই-মোডে রাখতে পারেন এবং নেভিগেশান অত্যন্ত সহজ এবং দ্রুত হয়ে যায়। - Patrick


কখনও কখনও আপনি লগ আউট করার পরেও চলমান একটি প্রোগ্রাম ছেড়ে দরকারী। আমি এমন কিছু সমাধান দেখেছি যা যে উদ্দেশ্যে নহুপ বা এমনকি পর্দা ব্যবহার করে। সবচেয়ে সহজ আমি জানি:

$ your_command_here & disown

আপনি একটি চলমান প্রোগ্রাম বিচ্ছিন্ন করতে পারেন:

$ your_command_here
# Press <Control-Z> to stop the program and bring it to background:
$ bg
$ disown

38



পর্দাটি ব্যবহার করা দুর্দান্ত কারণ আপনি যে কোনও স্থানে যে অ্যাপ্লিকেশানে "পুনরায় সংযোগ" করতে পারেন। - prestomation
+1, আমি অস্বীকার না শুনেছি। - user18911
ditto আবার অস্বীকার, যদিও আমি ইতিমধ্যে পর্দা সঙ্গে একই কাজ করে - Andy