命名って難しい

変数、関数、クラスなどなど実装より命名に毎回悩むタイプの人間による技術や趣味についてのメモ。

PowerShell

PowershellでCSVをExcelファイルに転記する

状況 DBの特定のテーブルをちょっと結合したりなんかして特定フォーマットのExcelに出力して欲しい こんな要件が結構あります。 私が入る前はこんな感じの要件1つに付き1つアプリ組んでたんですね。 今回そんな感じのを頼まれたので、できるだけアプリを組…

PowershellからVBScriptの連係

社内でエクセルファイルを取り扱う時VBScriptが実装楽で早い(Excelオブジェクトの開放など)時が多く、 それ以外についてはPowershellが実装が楽です。 連係を円滑に行うための流れを調べました。 連係のための関数・変数 Powershell コマンドの実行 コマンド…

Powershellで古い形式のExcel(xls)を新しい形式(xlsx)に変換する。

概要 下記の記事で作ったものと似たものを簡潔に書いてみました。 notshown.hatenablog.jp 実装 ソースコード $ErrorActionPreference = "Stop" # 例外が出たらその時点で即終了 $srcDir = (Resolve-Path $args[0]).Path $dstDir = (Resolve-Path $args[1]).…

Powershellで複数のCSVファイルを特定の列で1つのファイルにマージ

概要 以下2つのCSVを共通の列名"HeaderA"でまとめたCSVにしたい! A.csv HeaderA,HeaderB ValueA,ValueB B.csv HeaderA,HeaderC ValueA,ValueC 以下Powershellスクリプトで実現。 get-childItem "*.csv" | foreach { Import-Csv -Path $_ | Select HeaderA …

Windows Server 2008 R2 の PowerShellをアップデートした。

方法 下記URLを参照し、.Net FrameworkとWindows Windows Management Framework 4.0をインストールするだけ。 Step by Step Upgrading the Powershell Version 4 on 2008 R2 - TechNet Articles - United States (English) - TechNet Wiki 気をつけないとい…

Powershellでタスクスケジューラのタスクをまとめてエクスポートするスクリプト

サーバーに多数タスクが登録されているのですが、 何かあった時のためにタスクをエクスポートし、バックアップしようと思い作成。 前提 以下の環境を前提とします。 Scheduled Tasks Cmdletsが使える ソースコード $taskBasePath = "\MyTask\*" $taskSaveDir…

チートシート的メモ

概要 1,2行のちょっとしたコードをまとめる。 ちょいちょい更新していく。 PowerShell 現在のスクリプトのディレクトリを取得する。 Split-Path $MyInvocation.MyCommand.Path # pushd %~dp0と同じ処理 Push-Location -Path (Split-Path $MyInvocation.MyCom…

Powershellでバッチ処理の時に日時をらくに取得する。

powershell -Command "$(Get-Date).ToString('yyyyMMdd_HHmmss')" > %temp%\ret set /p ymd=< %temp%\ret .Netに慣れているため、このスタイルで日付にできると楽でいいですね。 あと最近TEMPフォルダに結果をリダイレクトして変数に戻してくる方法が楽で使…

PowerShellで現在参加しているドメインの各メンバーのパスワード期限を取得する。

下記記事で環境構築しておきながら全部どっとねっとで済ましてしまった。 notshown.hatenablog.jp SamAccountNameと残り日数CSV出力にしてなんやかんやする予定。 ソースコード Add-Type -AssemblyName System.DirectoryServices Add-Type -AssemblyName Sys…

Windows7にPowerShell用のActiveDirectoryモジュールをインストールする。

ADサーバーにデフォルトでインストールされているPowershellのADモジュールをWindows7でも使いたい。 手順 手順については以下のURLを参照した。というかそのままです。 How to add Active Directory module in PowerShell in Windows 7 – SharePoint and Ot…

PowerShellで実行中のPCのActive Directoryのパスワード期限を取得する。

ADのモジュールはADサーバーしかインポートできないみたいですね。 ということで.Netを利用して作りました。 Add-Type -AssemblyName System.DirectoryServices $adPath = [string]::Format("WinNT://{0}/{1}", [System.Environment]::UserDomainName, [Syst…