【PowerShell】特定ディレクトリのファイルを再帰的に削除する
※本記事は広告を含みます
あんまり使うことは無いかもだけど、個人的に使いたい場面があったのでメモ。
ローカルのディレクトリでごにょごにょ作業してて、その構成が案外良く、テンプレートとして別の場所で使いたい、でも既に置かれているファイルは消してきれいにしたい。みたいな限定的な使い方ができるはず。
このPowerShellを配置して実行すると、同じ階層にあるファイル、同階層のディレクトリ配下のファイルを全て消し飛ばす事ができる。もちろんだけど、実行する場合は注意が必要。必要なものも消えちゃうから。そう、思い出とか。
# このスクリプトを配置したディレクトリのパスを取得
$scriptDirectory = Split-Path -Parent $MyInvocation.MyCommand.Path
# 自ファイル名を取得
$scriptName = $MyInvocation.MyCommand.Name
# 削除対象のファイルパスを再帰的に取得
$files = Get-ChildItem -Path $scriptDirectory -File -Recurse | Where-Object { $_.Name -ne $scriptName }
# ファイル削除
$files | Remove-Item -Force
# 完了メッセージ
$wsobj = new-object -comobject wscript.shell
$result = $wsobj.popup("処理が完了しました")条件分岐もループもないとってもシンプルな処理だけど、これでやりたいことは実現できた。現場ではWindow端末で開発するのが一般的なので、PowerShellでこういうツールを作るアイデアがあると、色々楽をできるはず。
PowerShellがあんまり分からなくても、このくらいであればChatGTPにお願いすれば完成する。
他にもファイル名の文字列を一括置換したり、ファイル内の文字列を一括置換したりと、PowerShellは真面目に向き合いたくないしょーもない作業をどうにかしてくれる可能性を秘めている。
もともとこの役割を担っていたVBScriptが引退するみたいなので、偶然これを見てしまった方は、これを機に少し触ってみよう。
関連記事
話題のJevでブログのカテゴリ再編をしてみた
エンジニアが話題のJevを解説。文章生成せず「判断」に特化したAIモデルJevは、高速・安価・型安全を実現。従来のLLMの課題だったシステム組み込みやすさを評価し、Ghostブログの煩雑なカテゴリ再編をJevで効率化した具体的な活用事例と開発体験を紹介します。
ブログ記事の一括編集&分析ができるダッシュボードを作った
ブログ記事の一括編集と分析を効率化する自作ダッシュボードを開発。AIによるメタディスクリプション自動生成、記事のメタ情報・タグの一括更新、投稿分析機能を搭載。PythonとGoogle AIを駆使し、短時間で実現した開発経緯や機能の詳細を紹介します。
ブログ投稿用にObsidianプラグインを作った
Ghostブログへの投稿作業を効率化するため、Obsidianプラグインを自作しました。記事の新規/更新、タイトルやタグ設定、AIによるメタディスクリプション生成、画像最適化までをObsidian内で完結。執筆から公開までの手間を削減し、ワークフローを改善する開発経緯と具体的な機能について解説します。