যেহেতু কমপ্যাক্ট C
একটি স্থিত অবস্থানের উপর একটি দেখায় :
134217728 : 0 = 1.0 a 1 C BigFile.Dummy
123456789012345678901234567890123
= 33 তম অবস্থানটি এটি এনটিএফএস সংকুচিত হলে নির্দেশ করে।
যেহেতু সমস্ত সংকুচিত ফাইলগুলি 33 তম বর্ণের সি দিয়ে কমপ্যাক্ট দ্বারা তালিকাভুক্ত করা হয়েছে (কমপক্ষে যেখানে আমি এটি চালাচ্ছি সেখানে অন্যান্য ভাষাগুলি অন্যরকম হতে পারে), সম্ভবত এই আদেশটি সাহায্য করতে পারে:
compact /A | findstr /R ^................................C
/R indicates that the following is a regular expression
^ is to indicate look from beggining of line
The 32 dots for ignoring 32st charaters of the line
Then the C to indicate must look for a C at the 33th position, that indicates it is NTFS compressed
এটি যা করে তা হ'ল সমস্ত ফাইলের তালিকা তৈরি করা এবং তারপরে C
লাইনের শুরু থেকে 33 তম অবস্থানে সন্ধান করে ফিল্টার করা ।
যদি পুনরাবৃত্তি করতে চান, এমন একটি লুপের জন্য ব্যবহার করুন যা সমস্ত ডিরেক্টরি তালিকাভুক্ত করে এবং প্রতিটিটিতে সেই আদেশটি চালায়, এই বড় নমুনা কমান্ডের মতো (যদি সরাসরি কমান্ড লাইনে টাইপ করা থাকে):
(CD "C:\YourBaseDir\" && ECHO Listing NTFS compressed files and folders: && (compact /A /I | findstr /R ^................................C) && for /F "delims=" %a in ('DIR /AD/B/S') do @(CD "%a" && ECHO Listing NTFS compressed files and folders on: "%a" && (compact /A /I | findstr /R ^................................C)) & CD "C:\YourBaseDir\")
আপনি যদি একটি ব্যাচ ফাইলের মধ্যে কমান্ডটি রাখেন, %a
অবশ্যই অবশ্যই দ্বিগুণ হবে %
, সুতরাং অবশ্যই এটির মতো হওয়া উচিত (সমস্ত একটি বড় লাইনে):
(CD "C:\YourBaseDir\" && ECHO Listing NTFS compressed files and folders: && (compact /A /I | findstr /R ^................................C) && for /F "delims=" %%a in ('DIR /AD/B/S') do @(CD "%%a" && ECHO Listing NTFS compressed files and folders on: "%%a" && (compact /A /I | findstr /R ^................................C)) && CD "C:\YourBaseDir\")
বা ব্যাচ ফাইলটিতে আরও ভাল পড়ার জন্য:
@ECHO OFF
CD "C:\YourBaseDir\"
ECHO Listing NTFS compressed files and folders:
compact /A /I | findstr /R ^................................C
for /F "delims=" %%a in ('DIR /AD/B/S') do @(
CD "%%a"
ECHO Listing NTFS compressed files and folders on: "%%a"
compact /A /I | findstr /R ^................................C
)
CD "C:\YourBaseDir\"
সতর্কতা: কমপ্যাক্ট সংকুচিত ফোল্ডারগুলিও দেখাবে, এগুলির জন্য দ্বিগুণ প্রয়োজন এড়াতে।
ফলাফলটি এরকম:
Listing NTFS compressed files and folders:
0 : 0 = 1.0 a 1 C a
134217728 : 0 = 1.0 a 1 C BigFile.Dummy
Listing NTFS compressed files and folders on: "D:\Temp\a"
0 : 0 = 1.0 a 1 C b
134217728 : 0 = 1.0 a 1 C Other.Dummy
Listing NTFS compressed files and folders on: "D:\Temp\a\b"
134217728 : 0 = 1.0 a 1 C Another.Dummy
আশা করি এটি সহায়তা করে, এটি নিয়মিত এক্সপ্রেশনগুলিকে অনুমতি দেয় এমন ফাইন্ডাস্ট্রের উপর ভিত্তি করে, সুতরাং দয়া করে আপনার ওএস সংস্করণ এবং ভাষাতে নিয়মিত অভিব্যক্তিটি মানিয়ে নিন।
এটি ফলাফলের তালিকায় কেবল ফাইলগুলি (ফোল্ডার নয়) প্রদর্শন করার জন্য হবে (ভাল পাঠের সাথে একটি ব্যাচ ফাইলের অভ্যন্তরে):
@ECHO OFF
CD "D:\YourBaseDir\"
ECHO Listing NTFS compressed files:
for /F "delims=" %%a in ('DIR /A-D/B') do @(
compact /A /I "%%a" | findstr /R ^................................C
)
for /F "delims=" %%a in ('DIR /AD/B/S') do @(
for /F "delims=" %%b in ('DIR /A-D/B "%%a"') do @(
ECHO Listing NTFS compressed files on: "%%a\"
compact /A /I "%%a\%%b" | findstr /R ^................................C
)
)
ফোল্ডারগুলি না দেখানোর কৌশলটি হ'ল কেবলমাত্র ফাইলের /A-D
প্যারামিটার সংগ্রহ করতে একটি নির্দিষ্ট ফর ব্যবহার করা FOR
; প্রতিটি স্বতন্ত্র ফাইলের জন্য কমপ্যাক্ট / ফাইন্ডস্টারে কল করার ব্যয়ে।
এবং দয়া করে নোট করুন CD
যে এটি ডিরেক্টরিতে পরিবর্তিত হয় না ... এটি পরামিতি হিসাবে কমপ্যাক্ট করার জন্য ফাইলের পুরো পথটি অতিক্রম করে ... দীর্ঘ পথ সহ সতর্কতা !!!
ফলাফলটি তখন এর মতো (কোনও ফোল্ডার দেখানো হয়নি):
Listing NTFS compressed files:
134217728 : 0 = 1.0 a 1 C BigFile.Dummy
Listing NTFS compressed files on: "D:\Temp\a\"
134217728 : 0 = 1.0 a 1 C Other.Dummy
Listing NTFS compressed files on: "D:\Temp\a\b\"
134217728 : 0 = 1.0 a 1 C Another.Dummy
এটি ( sed
উইন্ডোজগুলির জন্য জিএনইউ থেকে ) ব্যবহার করে ( এই পৃথিবীর সমস্ত জিনিস হিসাবে) উন্নত করা যেতে পারে যা কমপ্যাক্ট / ফাইন্ডস্টার জোড়ার ফাইলের নামটি কেটে দেয় এবং সেই পথ এবং sed
ফলাফলের সাথে মিলে যায় এমন একটি ইসিওও দিয়ে দেয় ।
আশা করি এটি কাজটির সাথে সহায়তা করতে পারে।