タグ

fileとPSに関するkiyo_hikoのブックマーク (4)

  • have Powershell get-childitem return files only

    I'd like to use get-childitem recursively, but only have it return files not directories. The best solution I have just doesn't seem natural: gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }

    have Powershell get-childitem return files only
    kiyo_hiko
    kiyo_hiko 2023/09/06
    "Get-ChildItem -Recurse -Include *.pdf | where { ! $_.PSIsContainer }"
  • PowerShell/テキストファイルを1行ずつ読み込むサンプルコード - Windowsと暮らす

    2023-11-02 PowerShell/コマンドレットのエラーをTry..Catchする方法 PowerShell 2023-11-01 PowerShell/ネットワークドライブの接続・切断方法 2023-09-03 PowerShell/PowerShellでフォント一覧を取得する 2023-08-14 MenuBar 2023-08-09 PowerShell/PowerShellでファイル名の一部を変更するサンプルスクリプト 2023-07-25 開発ツール/WinMergeで比較開始からサブフォルダーも対象とする設定 開発ツール 2023-07-05 FrontPage 2023-07-02 Windows11/タスクバーの時計に秒を表示する操作手順 Windows11 2023-06-11 Windows11/エクスプローラーを別プロセスで起動する 2023-05-05 W

    kiyo_hiko
    kiyo_hiko 2019/05/30
    $content = (gc $file) -as [String[]]; foreach ($line in $content) { doSomething($line) }
  • WindowsのPowerShellでパス文字列を操作する

    解説 PowerShellでスクリプトを記述していると、パス文字列を操作するような局面が少なからず発生する。例えば、パス文字列からドライブ名やファイル名だけを抽出したい、特定のフォルダ・パスとファイル名を結合して1つのパスを生成したい、などのケースである。このような操作は、もちろん、Stringクラス(System名前空間)を利用して純粋に文字列的に操作しても構わないが、実はなかなか手間な操作を強いられる。 例えば、パスの結合1つをとっても、「C:\Windows」と「\data.txt」であれば単純に文字列同士を結合すればよいが、「C:\Windows\」と「\data.txt」であれば、片方の「\」を除去する必要があるし、「C:\Windows」と「data.txt」であれば、間に「\」を追加する必要がある。 これはほんの一例にすぎないが、パス文字列を純粋に文字列的に操作するのは、単純

    WindowsのPowerShellでパス文字列を操作する
    kiyo_hiko
    kiyo_hiko 2019/05/30
    Test-Path→存在チェック、Join-Path→ファイル名生成、Split-Path→pathname-directoryやpathname-nameっぽいもの、Convert-Path絶対相対パス変換。文字列コマンドレットよりもパスに特化した暗黙の操作ができるのでスクリプトが簡単になる
  • ファイルの一覧を表示する(Get-ChildItem)

    ファイルの一覧を表示する(Get-ChildItem) 探すディレクトリを指定する(-Path) 一致するファイル名のみ表示する(-Filter) 一致するファイルを除外する(-Exclude) ディレクトリのみ表示する(-Directory) ファイルのみ表示するする(-File) 隠し属性のファイルも表示する(-Force) 隠し属性のファイルのみ表示する(-Hidden) システム属性のファイルのみ表示する(-System) 読み込み専用の属性のファイルのみ表示する(-ReadOnly) ファイルの属性に一致するファイルを表示する(-Attributes) 子のディレクトリの中も表示する(-Recurse) 子のディレクトリの階層を制限して表示する(-Depth) 名前のみ表示する(-Name) フルパスで表示する(FullName) 1行に複数のファイル名を表示する(Format-

    kiyo_hiko
    kiyo_hiko 2019/03/14
    便利。例)パターンに合致するファイルを得る:$dir = <パス>; gci $dir -Recurse -Include <パターン> | %{$_.FullName}
  • 1