পাওয়ারশেলটিতে কেবলমাত্র চাইল্ডাইটেম রিটার্ন ফাইল রয়েছে


76

আমি গেট-চাইল্ডাইটেমটি পুনরাবৃত্তভাবে ব্যবহার করতে চাই তবে কেবল এটির ডিরেক্টরি ফাইল নয় ফাইলগুলি ফিরিয়ে দেওয়া উচিত। আমার সবেমাত্র সর্বোত্তম সমাধানটি প্রাকৃতিক বলে মনে হচ্ছে না:

gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }

উত্তর:


76

এটা চেষ্টা কর:

gci . *.* -rec | where { ! $_.PSIsContainer }

4
আপনি যদি পাত্রে বাদ দিচ্ছেন তবে আপনি * ছাড়তে পারেন। *, ঠিক?
MDMoore313

99

পাওয়ারশেল 3.0.০ এ এটি সহজ,

gci -Directory #List only directories
gci -File #List only files

এটি আরও খাটো,

gci -ad # alias for -Directory
gci -af # alias for -File

2

পাওয়ারশেল 3.0.০ এ আপনি নতুন যুক্ত হওয়া -Attributesপ্যারামিটারও ব্যবহার করতে পারেন
(লজিকাল অপারেটরগুলির সাথে একসাথে)

Get-ChildItem -Recurse -Attributes !Directory+!System

Golfed

dir -r -Attributes !D

-4

পাওয়ারশেল ২.০-তে আমি যে এক্সটেনশন সহ সমস্ত ফাইল অন্তর্ভুক্ত করেছিলাম তা হ'ল:

get-childitem -Recurse -include *.*

ফোল্ডারগুলির কোনও এক্সটেনশন নেই তাই এগুলি বাদ দেওয়া হয়েছে, নামযুক্ত কোনও ফাইলের থেকে সাবধান থাকুন।


10
এটি (ডিরেক্টরি সম্পর্কে) সত্য নয়। এক্সটেনশন সহ ডিরেক্টরি থাকতে আপনার কোনও কিছুই থামাতে পারে না
রোমিও নিনভ 7:55
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.