問題タブ [get-childitem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - Get-ChildItemを使用して特定の名前のディレクトリ内のファイルを見つける方法は?
という名前のプロジェクト フォルダーがtopfolder
あり、特定のパターンに一致するすべてのサブフォルダー内のすべてのファイルを検索しfoo
たい。
私は次のようなものを試しました:
しかし、次の 2 つの問題があります。
- 実際に含まれているファイルのみ
foo
がリストされます(fooのようなフォルダーにあるファイルが必要です)。 - このフィルタに一致するディレクトリも結果セットの一部になります。
それから私はこれを試しました:
しかし、それはまったく機能しません。明らかに、ワイルドカードはパスの単一セグメントのみに一致するため、そのパターンは一致しますが一致topfolder\foobar
しませんtopfolder\subfolder\foobar
。
これまでに見つけた唯一の方法は、次のように Get-ChildItem を 2 回使用することでした。
これは機能しますが、2 回呼び出すのは無駄のように思えます。またはのようなgci
適切なワイルドカード表現が見つからなかったことを願っています。-Path
-Filter
-Include
それを行う最善の方法は何ですか?
file - powershellを使用して特定のタイプのファイル(csvファイルなど)が存在するかどうかを判断する方法は?
フォルダー A に csv ファイルがある場合は、フォルダー A 内のすべての csv ファイルを削除する機能が必要です。その後、すべての csv ファイルを削除します (実際には、フォルダー A 内の正確な csv ファイルの名前はわかりません)。フォルダー A に csv ファイルがない場合は、何もしません。mp3 ファイルの削除に関するトピックを検索しました: Powershell - すべての非 mp3 ファイルを削除する
次に、例を取り出します。以下は、フォルダー A 内の csv ファイルを削除するコマンドレットです。
ただし、フォルダー A に csv ファイルがない場合、上記の cmd を実行するとエラーが発生するという問題があります。csvファイルが存在するかどうかを判断する方法がわかりません。他の誰かが助けてくれますか? どうも。
powershell - Powershell Get-ChildItem -recurse がすべてのアイテムを取得しない
フォルダーから特定のファイルを消去し、残りを事前定義されたサブフォルダーに移動するpowershellスクリプトに取り組んでいます。
私の構造は次のようになります
移動を開始する前に、ファイル構造全体からすべての pdb、config、および asax ファイルを削除したいと考えています。私が使用するもの:
など、すべてのファイルタイプを削除する必要があります。Web サイトの bin フォルダーにある pdb ファイルを除いて、うまく機能します。そして、web サイト フォルダー内の ASAX ファイルの場合。何らかの理由で、Get-ChildItem 再帰検索によって無視されます。
これは、再帰構造内のアイテムの深さが原因ですか? それとも別のものですか?指定どおりにすべてのファイルを削除するように修正するにはどうすればよいですか。
編集: -force を追加しようとしましたが、何も変わりませんでした
回答:以下が機能しました:
powershell - 「作成日」に基づいてファイルをコピーし、新しいフォルダーを作成する
Picturesフォルダー内のすべてのファイルをカウントしています
次に、すべての MTS ファイル (ビデオ) を別のフォルダーにコピーしています。
これはうまく機能します。しかし、年ごとにフォルダを作成しc:\video
、対応するファイルをコピーするにはどうすればよいですか?
アップデート:
Shay はこれを達成するのを手伝ってくれました。現在、次のコードがあります。
フォルダーを正常にテストしますが、すべてのTest-Path
ファイルをスキップします。どういうわけかループを壊していますか?それともパイプラインを台無しにしますか?
iis - PowerShell の Get-ChildItem iis:\sites | Export_CliXml sites.xml が文字列出力と同じ結果にならない
短い:
あるものを文字列として、別のものを xml として返します。なんで?
長く:
走るとき
私は次の行で何かを取得します
しかし、次のように Export-CliXml にパイプすると:
「Default Web Site」または「MyTestSite」が含まれていると何も表示されません。=> 文字列と xml に共通点はありません。
Get-Process で同じことをすると
出力ファイルで自分のプロセスを見つけることができます。=> 文字列の内容は xml で確認できます。
Get-ChildItems IIS:\Sites は 1 つのテキストと何か他のものを xmlとして出力するのに、Get-Process はテキストと xml とほぼ同じ出力をするのはなぜですか?
私が誤解したのは何ですか?
問題は、Get-ChildItem iis:\sites から例外が発生する可能性があると思いますが、出力は引き続き生成されます。xml出力も問題ないようです。
更新:
私がするとき
探している値を取得します。
バインディングを追加すると
2 つのサイトのみが繰り返され、エラー メッセージが表示されます。とにかく、xmlは問題ありません。(私が信じているコードのいくつかのよく構築されたtry-catch)
powershell - powershellで、Rename-Itemを使用して古いファイル名と新しいファイル名を同時に出力するにはどうすればよいですか?
Get-ChildItem
piped toを使用してファイルのリストを選択し、各行に "Renamed oldfilename to newfilenameRename-Item
"のようなテキストを出力表示したいと思います。
これどうやってするの?
workflow-foundation-4 - 子アクティビティサブツリーを取得する
従来のワークフローシステムをWF4に変換しているので、アプリケーションのAPIと一致させるために、いくつかのフープをジャンプする必要があります。そのため、問題の説明をできるだけ単純に保つようにします。:)
シーケンスを引数として取り、それを実行するカスタムアクティビティがあります。カスタムアクティビティは、実行する前に、シーケンス(およびそのブランチなど)をトラバースして特定のタイプの子アクティビティを探す必要があります。次に、これらの特定の子アクティビティに関するレポートを作成します。
制約がGetChildSubtreeアクティビティを使用できる場合、検証時にアクティビティの子サブツリーをトラバースできることは知っていますが、実行時にリストにアクセスすることはできません。また、ホストアプリケーションからActivityValidationServicesを使用して同様の呼び出しを実行することも可能ですが、それは私のシナリオでも機能しません。
では、カスタムアクティビティの実行メソッド内から子サブツリーのアクティビティのリストを取得するための最良の方法は何ですか。
前もって感謝します!
マーカス。
actionscript-3 - AS3はテキストフィールドにアクセスします
私は3つのムービークリップを持っており、それぞれに子としてテキストボックスがあります。
アクティブなものを設定します
これは動作します
これはしません
これを動的に機能させるにはどうすればよいですか?
actionscript-3 - as3これを1行で実行できますか
こんにちは私はこれに行くことができます
しかし
動作しません
powershell - Powershell Get-ChildItem -Filterは、同じ値のWhere句とは動作が異なります
MyFolderというサーバー上にフォルダーがあります。MyFolder.1、MyFolder.2、MyFolder.3などと呼ばれる追加のフォルダーがあります。
私が実行した場合:
期待どおりの出力が得られます。
ただし、実行した場合:
私は得る:
MyFolderが出力にどのように含まれるかについて混乱しています。出力は同じだと思います。
オンラインヘルプでは、フィルターの構文がプロバイダーに基づいていることが強調されていますが、このインスタンスで使用されているプロバイダーがわかりません。
ここで基本的な知識が不足していますか?正規表現文字列をフィルターに渡そうとしました"MyFolder\.*"
が、これは単に何も返しません。簡単なものが欠けていると思います。
Powershellバージョン2を実行しています。
解像度
ワイルドカードマッチングの違いを指摘してくれたRomanKuzminに感謝します。以下に期待される出力を示します。
将来的には、コードのノイズを減らすために、この構文を簡単に使用する予定です。