-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ignore symlinks when calculating directory sizes #5
Comments
I think this seems to be a common problem with PS modules, as I had opened the same issue in this repository too about a month ago - gngrninja/PSFolderSize#20 |
If you have time I welcome a contribution to fix this. Otherwise I will look into it when I have the time :) |
Upon some rudimentary research, I found that this line https://github.com/gardebring/PowerColorLS/blob/main/src/Private/FileAndFolderFunctions.ps1#L112 would require some object filtering in between the pipes; excluding directories that have the Is this correct? Note that this might require additional checks for figuring out junctions/hardlinks too. I have my uni exams, I'll definitely try to send a PR once they're done. |
Hi again @rashil2000 |
Yes, it seems like when we specify the ReparsePoint attribute, it just excludes those folders from listing but still recurses into them. PowerShell 6+ doesn't follow symlinks by default, but provides a FollowSymlink flag in case we want to recurse into them. However, for 5.1, we'll need to create a custom Get-ChildItem function, the one specified in this brilliant answer - https://stackoverflow.com/a/55544084 I tried using this and gives correct results for now. I'll do some more testing and send a PR :) |
@rashil2000 |
Just keep in mind the difference between hardlinks, junctions, symbolic links, shortcuts, etc. Lot's of things there...
|
Not yet. Reason being, I rely on other CLI utilities for disk usage now (for example, gdu in Go or dua in Rust) as PowerShell is just too slow for this work. However, it has been partly fixed in the issue I linked above, see gngrninja/PSFolderSize@adf71c7. |
I noticed it's showing ~2x the size of a particular folder when compared to the Explorer's Properties dialog. Upon inspecting, I found out that the folder contained symlinks to some other folders.
The
--show-directory-sizes
flag should ideally ignore symlinked (soft linked) folders and should not recurse into them to add their size to the output.The text was updated successfully, but these errors were encountered: