2018.12.10みなさんこんにちは、テラド(@terashin1226)です!Windowsのポチポチ業務(マウスを使った業務)を爆速化するために、PowerShellを使った効率化の方法をお伝えしています。前回から複数ファイルを別ディレクトリにコピーし、名称を変更するスクリプトを作成しています。コマンドレット間でオブジェクトを引き渡すためのパイプランという仕組みを前回記事で詳しく解説しました。事前準備ディレクトリのフルパスを変数に代入するコピー先のディレクトリがなければ作成するファイルをコピーし名称を変更するCopy-Itemの構文Copy-Itemで複数ファイルを別ディレクトリにコピーしファイル名を変更する完成したスクリプトを実行するまとめ連載目次:Windowsのポチポチ業務を爆速化するPowerShellスクリプトの全体像スクリプトのおおまかな全体像は以下のようになります。←今回説明するところ今回はForEach-Objectに引き渡されたファイルをコマンドレット:Copy-Itemでファイル名を変更し別ディレクトリへコピーする方法をお伝えし、スクリプトを完成させます。事前準備さっそくファイルをコピー!...と行きたいところなのですが、その前にディレクトリのフルパスを変数に代入してスクリプトを見やすくしたり、コピー先のディレクトリを作成します。ディレクトリのフルパスを変数に代入するディレクトリのフルパスを変数に代入してスクリプトを見やすくします。コピー元のディレクトリを「$indir」、コピー先のディレクトリ「$outdir」とし、どちらのディレクトリもデスクトップに配置することにします。'C:\Users\terad\Desktop\output'このようにフルパスを変数に代入しておくことで、長いパスを毎回記載しなくともよくなります。コピー先のディレクトリがなければ作成するコピー先のディレクトリが存在しない場合には自動で作成し、人間が作業する手間を省きます。Directory}if文でディレクトリの有無を判定する方法は以下の記事を参照してくださいね。Windowsのポチポチ業務を爆速化するPowerShell、if文を使いフォルダの有無で処理を分岐させる方法Windowsのポチポチ業務(=マウスを使った業務)を爆速化できるPowerShell。if文を使ってフォルダの有無など状況に応じて処理を分岐させる方法をご紹介します!tonari-it.com2018.11.12ファイルをコピーし名称を変更するコマンドレット:Copy-Itemを使ってファイルをコピーします。Copy-Itemの構文Copy-Itemの構文を把握しておきましょう。コピー先のファイル名Copy-Itemの直後にコピー元のファイル名、Destinationパラメータにコピー先のファイル名を指定します。「C:\Users\terad\Desktop\input\01.txt」のようにファイル名はフルパスで指定します。Copy-ItemはDestinationパラメータで指定したファイル名に変更した上でファイルをコピーします。Copy-Itemで複数ファイルを別ディレクトリにコピーしファイル名を変更するCopy-Itemで別ディレクトリにコピーしファイル名を変更するスクリプトは以下のようになります。$outfile}詳しく説明していきます。1行目:Get-ChildItemのPathパラメータでパスを「$indir¥*.txt」と指定します。パスをワイルドカード「*」を含む形で書くことで、コピー元ディレクトリ内の拡張子「.txt」であるファイルをすべて取得します。取得したファイルをパイプラインでForEach-Objectに引き渡します。3、4行目:新たに変数$infileと$outfileを用意しました。PowerShellでは「+」を使用することで文字列を結合できます。$infileに1コピー元のフルパス「$indir」と2nameプロパティで取得したファイル名を結合し代入します。$outfileに1コピー先のフルパス「$outdir」と2nameプロパティで取得したファイル名に3「変更後」という文字列をプラスして代入します。5行目:用意した$infileと$outfileを使いCopy-Itemで新たなファイルを作成します。3~5行目はすべてForEach-Object内での処理なので、複数ファイルすべてについて適用されます。完成したスクリプトを実行するここまで作ってきたスクリプトをつなげると以下のようになります。事前準備として変数にディレクトリのフルパスを代入していることで、それ以降のスクリプトがシンプルで見やすくなっていますね。$outfile}デスクトップの「input」ディレクトリに01.txt~20.txtと20個のテキストファイルを格納しています。スクリプトをISEのスクリプトウィンドウに入力して実行すると...新たにoutputディレクトリが作成、ファイルがコピーされました。ファイル名に「変更後」が加わり、名称変更も成功していますね!まとめCopy-Itemを使えばファイルをコピーし名前を変更することができます。フルパスを変数に代入することでスッキリとしたスクリプトを書くことができました。今回作ったスクリプトをカスタマイズし現場でもお役立てください。...ファイル名をもっと自由に変更したいですよね。そのため次回は正規表現という方法についてお伝えしていきます。最後までお読みいただきありがとうございました!連載目次:Windowsのポチポチ業務を爆速化するPowerShellWindowsのポチポチ業務(マウスを使った業務)を爆速化するために、PowerShellを使った効率化の方法をお伝えしています。投稿者プロフィールteradoshプログラミングする福祉職システムエンジニアとして5年勤務した後、高齢者デイサービスで4年間働いた異色の経歴(学生時代は水泳コーチ)。プログラミングの経験を活かし、福祉現場の業務効率化に情熱を燃やしています!お気軽にフォローしてくださいね。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。関連記事PC全般・WindowsWindowsのポチポチ業務を爆速化するPowerShell、短いワードでサッと関数を呼び出すエイリアスの使い方Windowsのポチポチ業務(=マウスを使った業務)を爆速化するPowerShell。PowerShellを起動したときに実行されるプロファイルというスクリプトに関数を記述しておくことで、自動的にFunctionドライブに関数を登録しPowerShellから呼び出せるようにする方法をお伝えします!2019.02.13PC全般・WindowsWindowsのポチポチ業務を爆速化するPowerShell、起動時に関数を自動登録するプロファイルの使い方Windowsのポチポチ業務(マウスを使った業務)を爆速化するPowerShell。今回はPowerShell起動時に自動で実行されるプロファイルというスクリプトを使って、関数やエイリアスを登録する方法をお伝えします。2019.02.19PC全般・Windows簡単Git入門!はじめてのコミットでリポジトリ(フォルダ)の初期状態を保存しようSourceTreeでリポジトリに指定したフォルダの情報を最初のコミットでGitに保存します。ステージングエリアなどの画面画像多めで操作をわかりやすく解説しています。2017.09.08PC全般・WindowsWindows10にアップグレードして見づらいフォントの解決法Windows10にアップグレードをすると、フォントが「游ゴシック」に設定されます。かすれて見づらいし、細長くてバランスも悪い...今回はWindows10でシステムフォントを変更する方法についてです。2015.11.30PC全般・WindowsWindows10にアップブレードしてXAMPPのApacheが起動しない件Windows10にアップブレードをしたところ、XAMPPのApacheが起動をしなくなるという困った件が起きましたので解決方法についてです。ポートやPIDやIISについてもちょっぴり補足しています。2015.12.02PC全般・Windows【超入門】10分でできるWindowsでのはじめてのバッチファイル作成Windowsでのバッチファイル作成の入門編です。バッチファイルの基本であるechoコマンド、pauseコメンド、remコマンドについて解説します。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。RowSourceプロパティとAddItemメソッド2020.01.21GASでGoogleスライドのSlideオブジェクトの概要とその取得方法2020.01.162020.01.24Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。