প্রকল্প সম্পর্কে
witr হলো Linux, macOS, Windows এবং FreeBSD-এর জন্য একটি একক স্ট্যাটিক বাইনারি যা একটি প্রশ্নের উত্তর দেয়: এটি কেন চলছে? প্রসেসের নাম, PID, পোর্ট, কন্টেইনার বা খোলা ফাইল দেওয়া হলে, এটি সুপারভাইজার, সার্ভিস, শেল এবং কন্টেইনারের কার্যকারণ চেইন তৈরি করে যা ওই জিনিসটির এখন বিদ্যমান থাকার জন্য দায়ী।
মূল ধারণা: সবকিছুকে একটি প্রসেস প্রশ্ন হিসেবে বিবেচনা করা হয়। পোর্ট, সার্ভিস, কন্টেইনার এবং কমান্ড সবই PID-তে ম্যাপ হয়, এবং একবার PID শনাক্ত হলে witr ব্যাখ্যা করে কী চলছে, কীভাবে শুরু হয়েছে, কী এটিকে চলমান রাখছে এবং এটি কোন প্রসঙ্গের অন্তর্গত। এটি ps, top, lsof, ss, systemctl বা docker ps-এর মতো টুল থেকে আলাদা, যেগুলো অবস্থা ও মেটাডেটা দেখায় কিন্তু ব্যবহারকারীকে আউটপুটগুলো ম্যানুয়ালি সম্পর্কিত করতে ছেড়ে দেয়।
ব্যবহারের মোড:
- স্ট্যান্ডার্ড আউটপুটে টার্গেট, প্রসেস, ব্যবহারকারী, কমান্ড, শুরুর সময়, পূর্বপুরুষ চেইন (যেমন systemd থেকে pm2 থেকে node), উৎস, কাজের ডিরেক্টরি, git রিপোজিটরি এবং সকেট দেখায়।
- --short শুধুমাত্র পূর্বপুরুষ চেইন প্রিন্ট করে; --tree পূর্বপুরুষকে ট্রি হিসেবে রেন্ডার করে যাতে সর্বোচ্চ ১০টি চাইল্ড প্রসেস অন্তর্ভুক্ত থাকে।
- --json মেশিন-পাঠযোগ্য ফলাফল নির্গত করে; --env এনভায়রনমেন্ট ভেরিয়েবল দেখায়; --verbose বর্ধিত প্রসেস তথ্য যোগ করে; --warnings শুধুমাত্র সতর্কতা দেখায়।
- পজিশনাল আর্গুমেন্টগুলো প্রসেস বা সার্ভিস নাম হিসেবে বিবেচিত হয়, ডিফল্টভাবে সাবস্ট্রিং ম্যাচিং সহ এবং --exact সঠিক নামের জন্য। একাধিক মিল PID সহ তালিকাভুক্ত হয় এবং --pid দিয়ে পুনরায় চালানোর পরামর্শ দেওয়া হয়।
- --pid, --port, --file এবং --container পুনরাবৃত্তিযোগ্য এবং একে অপরের সাথে ও নাম আর্গুমেন্টের সাথে মিশ্রিত করা যায়; ফলাফল দেওয়া ক্রমে প্রদর্শিত হয়, লেবেলযুক্ত বিভাজক দ্বারা পৃথক করা হয়।
- --container Docker, Podman, nerdctl, K8s/crictl, Incus, LXC, LXD এবং FreeBSD জেল জুড়ে অনুসন্ধান করে, কন্টেইনারের নাম, ইমেজ, কমান্ড এবং compose প্রজেক্ট/সার্ভিস লেবেল ম্যাচ করে।
ইন্টারঅ্যাকটিভ TUI: কোনো আর্গুমেন্ট ছাড়া বা -i দিয়ে witr চালালে চারটি ট্যাবসহ একটি টার্মিনাল ড্যাশবোর্ড খোলে। Processes একটি লাইভ সর্টযোগ্য, ফিল্টারযোগ্য তালিকা দেখায় যার পাশে পূর্বপুরুষ প্যানেল থাকে। Ports শোনারত বা সব পোর্ট তালিকাভুক্ত করে মালিক প্রসেসসহ, a দিয়ে টগল করা যায়। Containers সমর্থিত রানটাইম জুড়ে চলমান কন্টেইনারগুলো একত্রিত করে এবং মাউন্ট, নেটওয়ার্ক ও compose মেটাডেটার জন্য বিস্তারিত ভিউ দেয়। Locks সিস্টেম-ব্যাপী ফাইল লক দেখায় (Linux-এ POSIX/FLOCK, macOS/FreeBSD-তে lsof-উদ্ভূত) এবং সব আকর্ষণীয় খোলা ফাইল ডেসক্রিপ্টর একীভূত করতে পারে। TUI প্রসেস অ্যাকশনও সমর্থন করে যেমন kill, terminate, pause, resume এবং Unix-এ renice, মাউস নেভিগেশন, অভিযোজিত লাইট/ডার্ক থিমিং এবং ৩ সেকেন্ড থেকে শুরু হওয়া অভিযোজিত ক্যাডেন্সে অটো-রিফ্রেশ।
ইনস্টলেশন ব্যাপক: Unix এবং Windows-এর জন্য ইনস্টল স্ক্রিপ্ট, পাশাপাশি APT, Homebrew, MacPorts, Conda, AUR, Winget, npm, FreeBSD Ports, Chocolatey, Scoop, AOSC OS, GNU Guix, Uniget, Aqua, Brioche এবং mise-এর মাধ্যমে প্যাকেজ, deb/rpm/apk আর্টিফ্যাক্ট এবং সোর্স থেকে go install সহ। Bash, Zsh, Fish এবং PowerShell-এর জন্য শেল কমপ্লিশন দেওয়া হয়েছে এবং একটি man পেজ অন্তর্ভুক্ত। ইনস্টল ছাড়াই ওয়ার্কফ্লো চেষ্টা করার জন্য একটি ব্রাউজার-ভিত্তিক সিমুলেটেড টিউটোরিয়াল এবং স্যান্ডবক্স উপলব্ধ।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.