জংশন, সিমলিংক এবং হার্ড লিঙ্কগুলি তালিকাভুক্ত করতে আপনাকে অতিরিক্ত প্রোগ্রাম ডাউনলোড করার দরকার নেই, তবে আপনার যদি নির্দিষ্ট আউটপুট ফর্ম্যাট প্রয়োজনীয়তা থাকে তবে তারা সহায়তা করতে পারে।
বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিতে সমস্ত জংশন, সিমলিংক এবং সিমলিংক ডিরেক্টরিগুলি তালিকাবদ্ধ করুন:
dir /al /s
অথবা আপনি যদি এগুলি আলাদাভাবে তালিকাবদ্ধ করতে চান ...
বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিতে সমস্ত জংশন তালিকাবদ্ধ করুন:
dir /al /s | findstr "<JUNCTION>"
বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিগুলিতে সমস্ত প্রতিলিঙ্কগুলি তালিকাবদ্ধ করুন:
dir /al /s | findstr "<SYMLINK>"
বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিতে সমস্ত সিমলিংক ডিরেক্টরি তালিকাবদ্ধ করুন:
dir /al /s | findstr "<SYMLINKD>"
l
অ্যাট্রিবিউট পতাকা এখানে চাবিকাঠি; l
জন্য Reparse Points
(সংযোগস্থলের, symlinks এবং সিমবলিক লিঙ্ক ডিরেক্টরি)
হার্ড লিঙ্ক
দুর্ভাগ্যক্রমে dir
হার্ড লিঙ্কগুলি সাধারণ ফাইল হিসাবে তালিকাভুক্ত করে, তাই আপনি হার্ড লিঙ্কগুলি সনাক্ত করতে এটি ব্যবহার করতে পারবেন না। fsutil
পরিবর্তে আপনি একটি অন্তর্নির্মিত ব্যবহার করুন। এটি একটি উন্নত কমান্ড প্রম্পট থেকে চালানো প্রয়োজন।
সহ fsutil
, বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিতে সমস্ত হার্ড লিঙ্কগুলি তালিকাবদ্ধ করুন:
for /F "usebackq tokens=2* delims=:" %G in (`forfiles /s /c "cmd /c fsutil hardlink list @path | findstr /n .* | findstr /b /v 1"`) do @fsutil hardlink list "%G" & echo.
এই ওয়ান-লাইনারটি আদর্শ নয় এবং আমি কোনও উন্নতিকে স্বাগত জানাব।
forfiles
পুনরাবৃত্তির সাব-ডিরেক্টরিগুলি ব্যবহার করে ( /s
) আমার সিপিইউকে হামার করেছে এবং সম্পূর্ণ হতে কিছুক্ষণ সময় নিয়েছে।
fsutil
মূলত দুইবার চলমান শেষ পর্যন্ত; প্রথমবার প্রতিটি কল দ্বারা ফিরে আসা আউটপুট লাইনের সংখ্যা গণনা করে হার্ড লিঙ্কগুলি সনাক্ত করতে এবং দ্বিতীয়বার আউটপুট সঠিক হওয়ার জন্য সন্ধান পাওয়া হার্ড লিঙ্কগুলিতে দ্বিতীয় বার।
- নকল লাইন থাকবে। এগুলি অপসারণ করতে আপনি কোনও ফাইলের আউটপুট পুনর্নির্দেশ করতে চান এবং তারপরে কোনও সরঞ্জামের মাধ্যমে ফাইলটি চালাতে চান
uniq
।
এখানে একটি ব্যাচ ফাইল রয়েছে যা কেবলমাত্র for
হার্ড লিঙ্কগুলি সনাক্ত করতে ব্যবহার করে । এতে forfiles
জড়িত নয়, এটি কিছুটা দ্রুত হতে পারে, তবে এটি এখনও উপরের ওয়ান-লাইনারের বাকী ক্যাভেটগুলি ভোগ করে।
@echo off
AT > NUL
if %ERRORLEVEL% NEQ 0 echo You need to run this script from an elevated command prompt. Exiting. && exit /B 1
for /R "%CD%" %%a IN (*.*) do (
for /F "usebackq tokens=2* delims=:" %%b in (`fsutil hardlink list "%%a" ^| findstr /n .* ^| findstr /b /v 1`) do (
fsutil hardlink list "%%b"
REM The following echo command breaks up each group of hard links with a blank line
echo.
)
)
আরও কয়েকটি (অপরিবর্তিত) বিকল্প রয়েছে:
(পুরানো) মাইক্রোসফ্ট এইচএল স্ক্যান ইউটিলিটিটি ব্যবহার করুন
hlscan /dir %CD%
বিকল্প ব্যবহার করুন খোঁজ কমান্ড যে Microsoft এর SFUA ইউটিলিটি টুলকিট সাথে আসে:
find . -links +1
উপরে উল্লিখিত একই পদ্ধতিতে সাইনস্টারনালসের ফাইন্ডলিংক ইউটিলিটিটি ব্যবহার করুনfsutil
ব্যবহারের Uwe Sieber এর ListLinks প্রোগ্রাম - ব্যবহারের জন্য লিংক দেখতে
আপনি যদি জিইআইআই অ্যাপ্লিকেশন পছন্দ করেন তবে নীরসফ্টের এনটিএফএসলিংক ভিউ ব্যবহার করুন