2017-06-22 3 views
1

DOMAIN/USERNAME形式で表示されていないファイル所有者を取得しようとしています。ドメインのパスを持たないファイル所有者名を取得する

Get-ChildItem T:\file\ -Recurse| Where { 
$_.PSIsContainer -eq $True} | select @{Name='Date Modified'; Expression= 
{$_.LastWriteTime.ToString('MM/dd/yyyy')}}, @{Name='Owner';E= 
{$_.GetAccessControl().Owner}}, FullName 

オーナー出力がこれです:

1stserver \ユーザー名

は、私はそれだけで、これは

ユーザ名

を?:するために得ることができますとにかくあり

私は本質的にファイルパスからドメイン名/サーバ名を削除しようとしており、ユーザ名だけを表示しています。 PowerShellはゼロを使用して

答えて

2
Get-ChildItem T:\file\ -Recurse| Where { 
$_.PSIsContainer -eq $True} | select @{Name='Date Modified'; Expression= 
{$_.LastWriteTime.ToString('MM/dd/yyyy')}}, @{Name='Owner';E= 
{(($_.GetAccessControl().Owner.Split('\'))[1])}}, FullName 

はあなたのコードを使用して、実際には、我々は単純に「\」セパレータで「ドメイン\ユーザー」を分割して、

+0

第二の要素(ユーザーがある)1nth要素を取ります配列の場合は-origin。私の最初の傾向は、代わりに '' -1 ''を使うことでした。というのも、"配列内に何が起こっているかにかかわらず、最後の要素を取る "ということです。 –

+0

@JeffZeitlinドメイン名やユーザー名に大きな問題があるバックスラッシュがある場合。 – ConnorLSW

+0

これは最初の要素だったとすれば、ゼロベースの配列なので0番目と言いました。これは、Windowsセキュリティ記述子のための重く型付けされたオブジェクトです。この値は常にこの形式で表示されます。 – thepip3r

関連する問題