বলা হয় দুর্দান্ত সরঞ্জাম pv
# On Ubuntu/Debian system
$ sudo apt-get install pv
# On Redhat/CentOS
$ sudo yum install pv
তাহলে যেমন আপনি এটি ব্যবহার করতে পারেন
$ zcat dbpackfile.sql.gz | pv -cN zcat | mysql -uuser -ppass dbname
আমার সর্বশেষ সংস্করণ জন্য দয়া করে আপডেট 2 পরীক্ষা করুন
PS: এই ব্লগ দেখুন http://blog.larsstrand.org/2011/12/tip-pipe-viewer.html
আপডেট: মনে হচ্ছে উপরের লিঙ্কটি নষ্ট হয়ে গেছে তবে আমি এখানে একই নিবন্ধটি পেয়েছি http://blog.larsstrand.no/2011/12/tip-pipe-viewer.html
আপডেট 2: সম্পূর্ণ অগ্রগতি বারের সাথে আরও ভাল সমাধান। এটি করতে আপনার pv
বিকল্পগুলি 2 বিল্ড ব্যবহার করতে হবে । একটি হ'ল --progress
অগ্রগতি বারটি নির্দেশ করা এবং দ্বিতীয়টি সামগ্রিক ফাইলটি কত বড় --size
তা বলা tellpv
pv --progress --size UNPACKED-FILE-SIZE-IN-BYTES
.. সমস্যাটি .gz
মূল ফাইলের আকারের। আপনার নিজের ফাইলটি আনপ্যাক না করে কোনওভাবে আনপ্যাক করা মূল ফাইলের আকারের প্রয়োজন, অন্যথায় আপনি এই ফাইলটি দুবার আনপ্যাক করার জন্য মূল্যবান সময় হারাবেন (প্রথমবারের জন্য pv
এবং দ্বিতীয়বারের জন্য zcat
)। তবে ভাগ্যক্রমে আপনার কাছে gzip -l
বিকল্প রয়েছে যাতে আমাদের জিপিড ফাইল সম্পর্কে সঙ্কুচিত তথ্য রয়েছে। দুর্ভাগ্যক্রমে আপনি এটি টেবিল বিন্যাসে রেখেছেন যাতে এটি ব্যবহারের আগে আপনাকে উত্তোলন করতে হবে। সমস্ত একসাথে নীচে দেখা যাবে:
gzip -l /path/to/our/database.sql.gz | sed -n 2p | awk '{print $2}'
উফ .. সুতরাং আপনাকে শেষ কাজটি করতে হবে কেবল সমস্ত একত্রিত করা।
zcat /path/to/our/database.sql.gz | pv --progress --size `gzip -l %s | sed -n 2p | awk '{print $2}'` | mysql -uuser -ppass dbname
এটিকে আরও সুন্দর করার জন্য আপনি NAME এর মতো প্রগ্রেস যুক্ত করতে পারেন
zcat /path/to/our/database.sql.gz | pv --progress --size `gzip -l %s | sed -n 2p | awk '{print $2}'` --name ' Importing.. ' | mysql -uuser -ppass dbname
সর্বশেষ ফলাফল:
Importing.. : [===========================================>] 100%
আপডেট 3: দ্রুত ব্যবহারের জন্য কাস্টম ফাংশন তৈরি করুন।
mysql_import() {
zcat $2 | pv --progress --size `gzip -l %s | sed -n 2p | awk '{print $2}'` --name ' Importing.. ' | mysql -uuser -ppass $1
}
ব্যবহার:
mysql_import dbname /path/to/our/database.sql.gz
এটি কোথায় রাখবেন তা যদি আপনি জানেন না তবে এই উত্তরটি পড়ুন:
/unix//a/106606/20056
আপনি এলিয়াসগুলির মধ্যে ফাংশন যুক্ত করতে পারেন। সুতরাং আপনি যেমন ~/.bash_aliases
ফাইল ব্যবহার করতে পারেন ।
pv
,cpipe
) এই দৃশ্যে কাজ করে?