タグ付けされた質問 「powershell」

Microsoftの対話型シェル、スクリプトおよびプログラミング言語、および周辺環境。Microsoftソフトウェア(Windows、Exchange、SharePoint、クラウドサービスのAzureやOffice 365を含む)を管理するシステム管理者が一般的に使用するPowerShellは、Windowsにデフォルトで含まれており、VBスクリプトなどの以前の言語から引き継がれます。

2
Windows 10でPowershellモジュール「servermanager」が見つかりません
仮想マシンでwindows 10を実行していますが、powershellで次のコマンドを実行して、使用可能なwindows機能を一覧表示したいと思います。 Import-Module ServerManager Get-WindowsFeature すでに最初のコマンドを実行すると、以下が生成されます。有効なモジュールファイルがモジュールディレクトリに見つからなかったため、特定のモジュール「servermanager」はロードされませんでした。 Windows Web Server 2008 R2に含まれていないWindows Server 2008 Powershell Servermanagerモジュールのソリューションを使用しようとしました が、それは機能しません。つまり、C:\ Windows \ System32 \ WindowsPowerShell \ v1.0 \にモジュールが見つかりませんモジュール。それでも、Windows 10で64ビットまたは32ビットのPowershellを切り替える方法が見つかりませんでした。ありがとうございました

5
PowerShell + Ctrl + Rに相当しますか?
bashでは、Ctrl+ Rを実行し、コマンドを入力して履歴を検索できます。 PowerShellでそれをどのように行うのですか? キーを次のようなものにバインドする方法はありますか? function GH($str) {get-history | select-string $str} しかし、文字入力ごとに文字列を再読み込みするか、Ctrl+のように一致するコマンドを出力するために削除する必要がありますR。 これは可能ですか?

2
リモートPowershellセッションで資格情報を保持する方法は?
Azure File Shareがあり、cmdkeyでVMの資格情報を保持し、net useでマウントした後、Azure VMからこれを使用したいと思います。これは、Windows Server 2012 R2のローカルPowershellセッションでこれらのコマンドを実行することでテストされました。 ただし、この手順をAzure展開スクリプトに追加する必要があります。Azure Powershellスクリプトはラップトップから実行され、Azureサブスクリプションに接続し、多くの変数を使用してVMをゼロから構築します。 Invoke-Commandを使用して、Azure Powershellスクリプトから新しく作成されたVM上のリモートPowershellセッションに変数を渡すことができました。 $Session = New-PSSession -ConnectionUri $Uri -Credential $DomainCredential $ScriptBlockContent = { Param ($Arg1,$Arg2,$Arg3) cmdkey /add:$Arg1 /user:$Arg2 /pass:$Arg3} Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key) そしてエラー: PS C:\> Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key) CMDKEY: Credentials cannot be saved …

1
バインディングを除く2つのIIS 8.5サーバー構成の同期
2つのIIS 8.5 Webサーバー、Server 2012 R2があります サーバー1 Server2 Server1で行われた変更のみをServer2に同期するpowershellコマンドを見つけようとしています ただし、バインディングも同期する共有構成を試してみましたが、負荷分散されるため、これは望ましくありません。また、サーバーに不要なバインディングを追加して機能させないようにしています。 いくつかのwebdeploy powershellコマンドを見つけましたが、ファイルも同期したいようです。DFSを使用してファイルを同期します。 私ができることは、Server1 applicationhost.configまたはweb.configからServer2に変更を同期することだけです。

1
powershellを使用してHyper-v Cluserを管理する方法
Server 2016 Datacenterの両方で2つのホストがあります 各ホストには、共有ストレージを使用する現在2つのVMがあります ライブ移行、ストレージの移動、 私は、クラスター内のすべてのvmを同時に保存できるスクリプトをGoogle全体で探していました。 これを実行する場合: $clusterNodes = Get-ClusterNode; $Name = ForEach($item in $clusterNodes){Get-VM -ComputerName $item.Name; } {save-VM -ComputerName $item.Name; } vmを保存しますが、VMの名前を各ホストに1回ずつ2回要求されます。 私の全般的な目標は、クラスター内のすべてのVMを1台のPCから再構成できるようにすることです。また、VMが頻繁に移動するため、常に同じホスト上にあるとは限りません。 例: すべてのvmを保存します 共有ストレージのオフ移動: Set-VM pv02 -SnapshotFileLocation C:\ClusterStorage\Volume1\pv02 Set-VM pv02 -SmartPagingFilePath C:\ClusterStorage\Volume1\pv02 Set-VMHardDiskDrive -VMName pv02 -ControllerType SCSI -Path C:\ClusterStorage\Volume1\pv02\pv02.vhdx VMを起動します 各ホストに個別にログインすると、コマンドは正常に実行されますが、実稼働環境では、約100のVMを持つ7つのホストがあります。

1
信頼されていないドメイン上のWindowsリモート管理
現在、2つの信頼できないドメイン間でWindowsリモート管理(具体的にはPowershell Remoting)を有効にしようとしており、運がありません。 私のセットアップの簡単な説明: domain1-ワークステーションはこのドメインにあります domain2-接続したいサーバーはこのドメインにあります これらのドメイン間に信頼関係はありません。 ワークステーション(domain1に参加)から次のコマンドを使用して、Powershellリモート接続を作成しようとしています。 param( [パラメータ(必須= $ True)] $ server ) $ username = "domain \ user" $ password = read-host "$ usernameのパスワードを入力してください" -AsSecureString $ credential = New-Object System.Management.Automation.PSCredential($ username、$ password) $ session = New-PSSession "$ server" -Authentication CredSSP -Credential $ credential -UseSSL -SessionOption(New-PSSessionOption -SkipCACheck -SkipCNCheck) Enter-PSSession …

2
Powershell DSCによるSSL証明書管理
特定のドメイン内のすべてのターゲットで実行されていることを確認する必要があるサードパーティ発行の証明書があります。この証明書がDSC経由でインストールされていることを確認する方法はありますか?

8
フォルダー内のファイルを期限切れにする:x日後にファイルを削除する
誰でもアクセスできるWindows共有ドライブに「ドロップフォルダー」を作成したいと考えています。ファイルがX日以上フォルダー内にある場合、ファイルを自動的に削除したいです。 ただし、ファイルの最終変更日、最終アクセス時刻、または作成日を使用して、これを行うことがわかったすべての方法のようです。 これをユーザーがファイルをドロップして誰かと共有できるフォルダーにしようとしています。誰かがここにファイルをコピーまたは移動した場合、この時点で時計が動き始めます。ただし、実際にファイルを変更しない限り、ファイルの最終変更日と作成日は更新されません。最終アクセス時間があまりにも頻繁に更新されます... Windows Explorerでディレクトリを開くだけで最終アクセス時間が更新されるようです。 誰でもこれに対する解決策を知っていますか?ファイルのハッシュを毎日カタログ化し、特定の日付よりも古いハッシュに基づいてファイルを期限切れにすることは解決策になると考えています...しかし、ファイルのハッシュを取得するには時間がかかる可能性があります。 どんなアイデアでも大歓迎です! 注: 私はすでにここで非常に多くの回答を見てきました...ファイルサーバーリソースモニター、PowerShellスクリプト、バッチスクリプトなどを調べました。彼らはまだ最終アクセス時間、最終変更時間または作成時間を使用しています...説明したように、これは上記のニーズに適合しません。


5
電子メールアドレスがシステムに存在するかどうかを確認するExchange 2010 Powershellコマンド
次を実行するExchange 2010コマンドを探しています。 電子メールアドレス(ドメインおよびすべてで完全修飾)を指定して、電子メールアドレスがシステム内のメールボックスまたはグループに関連付けられているかどうかを確認します。 (理想的に)そのメールアドレスを所有しているエンティティを示します これは、移行をチェックし、すべてのエイリアスが正しく移動されたことを確認するのに非常に役立ちます。

5
PowerShellスクリプトを正常に実行した後にPsExecがハングするのはなぜですか?
スクリプトはかなり簡単です。一連のWindowsサービスを開始しようとします。ターゲットマシン上でローカルに実行すると正常に動作します。PsExecを介して実行した場合、スクリプトは実際に正常に実行されています。CMDプロンプトで「Enter」キーを押すまで、スクリプトは戻りません。これは問題です。これはTeamCityから呼び出されているため、PsExecが戻るのを待ってエージェントがハングするためです。 私は次を試しました: Powershellスクリプトの最後にexitand exit 0を追加する このSF質問の< NUL回答ごとに、PsExec呼び出しの最後にa を追加します >標準出力リダイレクトの追加 これは私が実際にpsexecを呼び出す方法です: psexec \\target -u domain\username -p password powershell c:\path\script.ps1 私が何をしても、ローカルでcmdプロンプトが表示されるまでハングします。Enterキーを押すと、次のメッセージが表示されます。 powershell exited on target with error code 0.



2
powershellを使用してUSB外付けドライブをマウント解除する
PowerShellを使用して外付けUSBドライブのマウントを解除しようとしていますが、これを正常に実行できません。次のスクリプトは私が使用するものです。 #get the Win32Volume object representing the volume I wish to eject $drive = Get-WmiObject Win32_Volume -filter "DriveLetter = 'F:'" #call dismount on that object there by ejecting drive $drive.Dismount($Force , $Permanent) 次に、コンピューターをチェックして、ドライブがアンマウントされているかどうかを確認しますが、マウントされていません。 ブールパラメータ$ forceと$ permanentは、さまざまな順列を使用して試されたが、役に立たなかった。paramsが切り替えられると、dismountコマンドによって返される終了コードが変わります。 (0,0) = exit code 0 (0,1) = exit code 2 (1,0) = exit code …

6
CurrentUserにPowershell ExecutionPolicyを設定できません
実行中のコマンドのサンプルを次に示します。 PS C:\> Get-ExecutionPolicy -List Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser Undefined LocalMachine Unrestricted PS C:\> Set-ExecutionPolicy Unrestricted -Scope CurrentUser PS C:\> Get-ExecutionPolicy -List Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser Undefined LocalMachine Unrestricted 私は設定したいCurrentUserのUnrestrictedが、私はそうするように見えることはできません。このMSDNドキュメントで概説されているように、グループポリシーを確認しましたが、構成されたものは見つかりませんでした。 これを設定する方法についての手がかりはありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.