PowerShellでフォルダ内のファイル一覧を取得してCSVに出力する方法

Windows環境でフォルダ内のファイル一覧を取得したい場面は多々あります。例えば、定期的なファイル管理や監査用の記録、またはバックアップ作業のために一覧をエクスポートしたい場合です。
PowerShellを使えば、簡単にフォルダ内のファイル一覧を取得し、そのままCSV形式で保存することができます。

この記事では、PowerShellでフォルダ内のファイル一覧を取得し、CSVに出力する方法を解説します。


基本コマンド

まずは基本となるコマンドです。
以下の例では、C:\Test フォルダ内のファイル一覧を取得し、filelist.csv に出力します。

各コマンドの意味

  • Get-ChildItem "C:\Test"
    指定フォルダ内のファイルやフォルダを取得します。gcidir と省略可能。

  • Export-Csv
    取得結果をCSVに変換して保存します。

  • -NoTypeInformation
    CSVの先頭に不要な型情報行を出力しないようにします。

  • -Encoding UTF8
    CSVファイルの文字コードをUTF-8に指定します(文字化け防止)。


ファイルのみ取得する場合

フォルダ名は不要で、ファイルだけを取得したい場合は -File オプションを指定します。


サブフォルダも含めて取得する場合

サブフォルダ内のファイルもまとめて一覧化するには -Recurse を付けます。


出力内容を絞り込む

CSVに出力する項目を指定することも可能です。例えば、フルパス、サイズ、更新日時 だけを出力する場合:

これにより、余計な情報を省き、必要なデータだけをCSVに保存できます。

実行例イメージ

出力されるCSVファイルをExcelで開くと、以下のように一覧が表示されます。

FullName Length LastWriteTime
C:\Test\document1.txt 1234 2025/09/17 10:30:00
C:\Test\image.png 45678 2025/09/16 15:20:00
C:\Test\subfolder\report.docx 9876 2025/09/15 09:10:00

まとめ

  • Get-ChildItem でフォルダ内のファイル一覧を取得できる

  • Export-Csv を組み合わせることで、簡単にCSVへ出力可能

  • -File-RecurseSelect-Object を使えば用途に合わせて柔軟に一覧化できる

PowerShellを使えば、手作業でリスト化する手間を省き、自動化できるのでぜひ活用してみてください。

PL/SQL:BULK COLLECTとFORALLを使った効率的な大量データ処理

Oracle PL/SQLを使って大量データを処理する際、1行ずつループして処理を行うとパフォーマンスが低下します。
このようなケースで活躍するのが BULK COLLECTFORALL です。

これらを活用することで、SQLとPL/SQL間のコンテキスト切り替えを最小限に抑え、大量データを効率的に処理できます。


BULK COLLECTとは?

BULK COLLECTは、複数行のデータを一括でコレクション(配列型変数)に格納する仕組みです。

基本構文

 
SELECT カラム名 BULK COLLECT INTO コレクション変数 FROM テーブル名 WHERE 条件;

使用例

✅ 通常のSELECT INTOでは1行しか取得できませんが、BULK COLLECTを使うと複数行をまとめて変数に格納できます。


FORALLとは?

FORALLは、コレクションに格納されたデータを使って一括処理(INSERT/UPDATE/DELETE)を行う構文です。

基本構文

 
FORALL インデックス IN コレクション.FIRST .. コレクション.LAST DML文;

使用例

FORループで1件ずつUPDATEするよりも大幅に高速化できます。

BULK COLLECTとFORALLを組み合わせる

実務では、BULK COLLECTで一括取得 → FORALLで一括更新/削除といった流れがよく使われます。

処理フロー例

  1. BULK COLLECTで対象データを配列に取得

  2. 配列の内容をFORALLで一括更新

  3. コミット

このように組み合わせることで、バッチ処理や大量データ更新におけるパフォーマンスを劇的に改善できます。


パフォーマンス比較

  • 従来のループ処理
    SQLとPL/SQL間で行き来が多くなり、数万件以上の処理では遅くなる

  • BULK COLLECT + FORALL
    コンテキストスイッチが最小化され、処理速度が数倍〜数十倍向上するケースもある


注意点

  • BULK COLLECTで一度に大量データを取得するとメモリ不足の可能性あり
    LIMIT句を組み合わせて分割取得が推奨

  • FORALLはDML専用(SELECTでは使えない)

  • 例外処理はSAVE EXCEPTIONSを付けて制御することも可能


まとめ

  • BULK COLLECT → 複数行を一括取得

  • FORALL → 複数行を一括処理

  • 大量データ処理では必須テクニック

  • メモリ管理や例外処理に注意しつつ使うと、バッチ処理の効率が大幅に改善


💡 実際のプロジェクトでは「数十万件以上のデータ更新」で特に効果が出やすいため、PL/SQLチューニングの定番として覚えておきましょう。

Teamsのステータスが「取り込み中」「退席中」から変わらないときの対処法

Microsoft Teamsを使っていると、「取り込み中」「退席中」からステータスが自動で変わらないという不具合に遭遇することがあります。
オンライン会議やチャットで正しいステータスが反映されないと、業務に支障が出ることもあります。今回は、この現象の原因と解決方法をまとめました。

 

 


よくある原因

  1. バックグラウンドでTeamsが正常に動作していない
    → アプリの一時的な不具合でステータスが更新されない。

  2. PCのスリープや省電力モードの影響
    → 一度「退席中」になったまま復帰できないことがある。

  3. カレンダー連携の不具合
    → Outlook予定表とTeamsステータスの同期がうまくいかない場合。

  4. Teamsのバージョンが古い
    → 更新不足で既知の不具合が修正されていないケース。


対処法ステップ

1. Teamsを再起動する

  • 完全にアプリを終了し、再度起動してみましょう。

  • Windowsなら タスクトレイ右下 → Teamsアイコンを右クリック → 終了 で完全終了できます。

2. サインアウト・再ログイン

  • アカウントから一度サインアウトし、再度ログインすることでステータスがリセットされる場合があります。

3. キャッシュを削除する

  • キャッシュが破損しているとステータス更新が止まることがあります。

  • Windowsの場合、以下のフォルダを削除して再起動します:

     
    %appdata%\Microsoft\Teams
  • Macの場合は以下のパス:

     
    ~/Library/Application Support/Microsoft/Teams

4. Outlook連携を確認

  • TeamsはOutlookの予定表とステータスを同期しています。

  • Outlookを開き、予定表に不自然なステータスが残っていないか確認してください。

5. Teamsを最新版に更新

  • 画面右上の プロフィールアイコン → 更新を確認 で最新バージョンにアップデートしましょう。

6. OSの再起動

  • WindowsやMacの再起動も効果的です。

  • 特に長時間PCをスリープさせていた場合に有効です。


それでも解決しないとき

  • Teamsの再インストールを検討しましょう。

  • それでも直らない場合は、会社のIT管理者やMicrosoftサポートに問い合わせするのが確実です。


まとめ

  • 「取り込み中」「退席中」から変わらないのは、キャッシュや同期の不具合が原因であることが多い。

  • 再起動 → キャッシュ削除 → 更新確認 の順で対応すれば解決できる可能性が高いです。

  • 業務に影響が出る前に、トラブル発生時はすぐに試してみましょう。

知っておくと便利なMicrosoft Teamsのショートカットキー一覧

Microsoft Teamsはビジネスで欠かせないコラボレーションツールですが、操作に時間がかかってしまうと効率が下がってしまいます。そんなときに役立つのが「ショートカットキー」。マウス操作を減らすことで、日常業務のスピードを格段にアップできます。

ここでは、覚えておくと便利なMicrosoft Teamsのショートカットキーを一覧でご紹介します。


1. 基本操作ショートカット

  • 検索バーに移動Ctrl + E

  • 新しいチャットを開始Ctrl + N

  • 既読・未読を切り替えCtrl + Shift + U

  • ステータスを設定Ctrl + Shift + O


2. 会議・通話関連ショートカット

  • カメラのオン/オフ切り替えCtrl + Shift + O

  • マイクのミュート/解除Ctrl + Shift + M

  • 画面共有開始Ctrl + Shift + E

  • 会議から退出Ctrl + Shift + H


3. チャット・メッセージ操作ショートカット

  • 既読にするCtrl + Shift + E

  • メッセージ編集↑(矢印キー)

  • 絵文字の挿入Ctrl + .

  • ファイル添付Ctrl + O


4. ナビゲーションショートカット

  • アクティビティに移動Ctrl + 1

  • チャットに移動Ctrl + 2

  • チームに移動Ctrl + 3

  • カレンダーに移動Ctrl + 4

  • 通話に移動Ctrl + 5


5. 覚えておくと便利なポイント

  • ショートカットキーは WindowsとMacで異なる場合 があるため、自分の環境に合わせて覚えましょう。

  • Teams内で Ctrl + . を押すと、ショートカットのヘルプ一覧を呼び出せます。

  • 毎日よく使う操作から順に覚えるのがおすすめです。


まとめ

Microsoft Teamsのショートカットキーを覚えることで、日常業務のスピードは確実にアップします。特に会議中のマイク操作や、チャット間の移動は即効性が高いので、ぜひ試してみてください。

HULFTでCSVをバイナリ指定するとどうなる?使い方と注意点まとめ

はじめに

企業間やシステム間のデータ連携でよく利用されるファイル転送ソフトウェア「HULFT」。日常的にCSVやログファイルをやり取りしている方も多いと思います。
その際に必ず出てくるのが「ファイルモードの指定」。HULFTには 「テキスト指定(レコード指定)」「バイナリ指定」 の2種類があり、どちらを使うべきか迷うケースが少なくありません。

本記事では 「CSVをバイナリ指定で送った場合どうなるのか?」 を中心に、メリット・デメリットや注意点を整理します。


バイナリ指定とは?

HULFTにおける「バイナリ指定」とは、ファイル内容を1バイト単位のデータとしてそのまま送受信するモードを指します。
この場合、HULFTは以下のような変換や処理を一切行いません。

  • 改行コードの変換(CRLF⇔LFなど)

  • 文字コードの変換(Shift-JIS⇔UTF-8など)

  • レコード単位の制御(固定長・可変長)

つまり「HULFTが何も手を加えずにコピーする」のがバイナリ指定です。


バイナリ指定のメリット

  1. 内容がそのまま届く
    改行コードや文字コードが勝手に変換されないため、送信元のデータを完全に保持できます。

  2. ファイル形式を問わない
    CSVに限らず、Excel、PDF、ZIP、画像ファイルなども問題なく転送可能。
    → そのため「とりあえず壊れたくないファイルはバイナリ指定」で安全に扱えます。

  3. 異なるOS間でも安心
    WindowsからLinux、Linuxからホスト系など、環境差異を気にせず転送できます。


バイナリ指定のデメリット

  1. 文字コード変換がされない
    送信側がShift-JIS、受信側がUTF-8を前提としている場合、そのままでは文字化けします。

  2. 改行コードもそのまま
    WindowsのCSV(CRLF)をLinuxで処理すると、アプリ側がLFを期待していた場合に不具合の原因になります。

  3. レコード単位の扱いができない
    COBOLやホストシステム連携など「固定長レコード前提」のファイルを扱う場合は不向きです。


CSVをバイナリ指定で送るとどうなる?

結論から言うと、基本的に悪影響はありません
CSVは単なるテキストファイルですが、HULFT側で勝手に改行コードや文字コードを変換しないので、送信元と全く同じファイルが届きます。

ただし以下のケースでは注意が必要です。

  • 文字コードが異なる場合
    送信元がShift-JIS、受信先がUTF-8で解析 → 文字化けの可能性あり。

  • 改行コードが異なる場合
    Windowsで作成したCSVをLinuxで使うと、改行が意図通りに扱えないことがある。

そのため「受信側のシステムがどの文字コード・改行コードを想定しているか」を事前に確認しておくことが大切です。


まとめ

  • バイナリ指定は「ファイルをそのまま送りたいとき」に有効。

  • CSVを送る場合も基本的に問題はないが、受信側の文字コードや改行コードの前提条件によっては注意が必要。

  • 迷ったらまずは「バイナリ指定」で送り、必要に応じて受信側で変換処理を入れるのが無難です。


👉 実際の業務では「相手先がどんなシステムで受けるのか」を確認してから指定するのが鉄則です。
もし「文字コード変換が必要」や「固定長レコード前提」のような要件がある場合は、バイナリ指定ではなくテキスト指定を選ぶ方が安全です。