Я использую сценарии Google, чтобы найти сценарий PS для подсчета типов файлов и файлов в нескольких каталогах в нашей сети.

У меня есть несколько каталогов в моем каталоге "Библиотеки" на моем ПК на работе.

Я просто пытаюсь протестировать сценарий PS, чтобы заставить его работать, чтобы подсчитать файлы и перечислить типы файлов в моей папке "Libraries\Documents\Tidbits":

Get-ChildItem \\hilltop3\users$\LongRandy\My Documents\TIDBITS

но я получаю эту ошибку:

Get-ChildItem : Cannot find path '\\hilltop3\users$\LongRandy\My' because it does not exist.
At line:1 char:14
+ Get-ChildItem <<<< \\hilltop3\users$\LongRandy\My Documents\TIDBITS
+ CategoryInfo : ObjectNotFound: (\\hilltop3\users$\LongRandy\My:String) [Get-ChildItem], ItemNotFoundExc
eption
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand"

еще раз спасибо

4 ответа4

2

Поскольку в пути к файлу есть пробел, вам нужно заключить его в кавычки, чтобы PowerShell знал, что это одна строка / аргумент.

Обратите внимание на ошибку:

Не удается найти путь '\hilltop3\users $\LongRandy\My', так как он не существует.

Он останавливается на пробел после My потому что пробелы используются для различения отдельных аргументов в команде.

Попробуйте что-то вроде:

Get-ChildItem "\\hilltop3\users$\LongRandy\My Documents\TIDBITS"

0

Вы можете попробовать это:

Get-Childitem X:\ -Recurse | где {-не $ _.PSIsContainer} | Расширение группы -NoElement | сортировать счетчик -desc

куда

X:\ = "\ hilltop3\ users $\ LongRandy\ Мои документы \ TIDBITS"

Так:

Get-Childitem "\hilltop3\users $\LongRandy\ Мои документы \ TIDBITS" -Recurse | где {-не $ _.PSIsContainer} | Расширение группы -NoElement | сортировать счетчик -desc

Должно сработать.

0

Попробуй это:

$files = Get-ChildItem "\\hilltop3\users$\LongRandy\My Documents\TIDBITS" -recurse | where{$_.mode -notlike "d*"}
$files | group-object -Property extension | sort count -Descending
0

Как вы получили этот путь? Вы уверены, что это действительно \\hilltop3\users$\LongRandy\My Documents\TIDBITS? Похоже, каталог, который мог быть настроен путем перенаправления папок. Это означает, что он может иметь скрытый файл desktop.ini который дает папке другое имя в графическом интерфейсе Windows, чем то, которое вы использовали бы в командной строке. Путь перенаправления папки документов по умолчанию называется «Документы», а не «Мои документы».

Например, в моей сети большинство пользователей имеют путь, который может выглядеть как \\example.org\dfs\do\username\My Documents , но реальный путь - \\example.org\dfs\do\username\Documents . Windows добавляет файл desktop.ini в папку, которая выглядит следующим образом.

[ExtShellFolderViews]
...
Owner=username
Personalized=5
PersonalizedName=My Documents
...

В прошлом, как уже упоминалось, вам, вероятно, просто нужно процитировать свой путь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .