<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PowerShell アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<atom:link href="https://nyanblog2222.com/category/programming/powershell/feed/" rel="self" type="application/rss+xml" />
	<link>https://nyanblog2222.com/category/programming/powershell/</link>
	<description>ちょっとしたことを調べているよ</description>
	<lastBuildDate>Tue, 10 Oct 2023 06:06:03 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7</generator>

<image>
	<url>https://nyanblog2222.com/wp-content/uploads/2021/09/cropped-favicon-32x32.png</url>
	<title>PowerShell アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<link>https://nyanblog2222.com/category/programming/powershell/</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/>	<item>
		<title>【PowerShell】PDFを1ページずつ分ける方法【簡単】</title>
		<link>https://nyanblog2222.com/windows/5271/</link>
					<comments>https://nyanblog2222.com/windows/5271/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Sun, 27 Aug 2023 12:54:31 +0000</pubDate>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Web全般]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[iTextSharp]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[windows10]]></category>
		<category><![CDATA[分割]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=5271</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4.png 800w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4-768x401.png 768w" sizes="(max-width: 800px) 100vw, 800px" />PDFを好きに分割したいなぁ…。と考えることがあり今回はPowerShellとiTextSharpを使用して作ってみました。 ちなみにオンラインツールでAdobeやilovePDFでPDFカットというのがあるようですね！ [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/windows/5271/">【PowerShell】PDFを1ページずつ分ける方法【簡単】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4.png 800w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_4-768x401.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" />
<p>PDFを好きに分割したいなぁ…。と考えることがあり<br>今回はPowerShellとiTextSharpを使用して作ってみました。</p>



<p>ちなみにオンラインツールで<a href="https://www.adobe.com/jp/acrobat/online/split-pdf.html" class="broken_link">Adobe</a>や<a href="https://www.ilovepdf.com/ja/split_pdf">ilovePDFでPDFカット</a>というのがあるようですね！</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">コードを紹介する前に</a></li><li><a href="#toc2" tabindex="0">フォルダ構成</a></li><li><a href="#toc3" tabindex="0">iTextSharpの準備</a></li><li><a href="#toc4" tabindex="0">コード</a></li><li><a href="#toc5" tabindex="0">実行</a><ol><li><a href="#toc6" tabindex="0">実行コマンド</a></li><li><a href="#toc7" tabindex="0">フォルダ</a></li></ol></li><li><a href="#toc8" tabindex="0">補足</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">コードを紹介する前に</span></h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/07/2645602.png" alt="みみねこ" class="speech-icon-image"/></figure><div class="speech-name">みみねこ</div></div><div class="speech-balloon">
<p>itextsharpはライセンスが複雑になってきたそうで、取り扱いに注意する必要があるみたいです。<br>pdfsharpというのもあるみたいですね！</p>
</div></div>



<p><a href="https://qiita.com/toshi71/items/bc05d6e15edd645c8f46">iTextSharpのライセンスについてはこちらを参考にしました。</a></p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/07/2645602.png" alt="みみねこ" class="speech-icon-image"/></figure><div class="speech-name">みみねこ</div></div><div class="speech-balloon">
<p>今回は作ってみただけなのでこのままコードを紹介します！</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">フォルダ構成</span></h2>



<p>フォルダ構成はこちらです。</p>



<p><span class="marker-under">注意点：事前にnewフォルダに同じPDFファイルがある場合は上書きされます。</span></p>



<pre class="wp-block-code python"><code>■どこかのフォルダ
┣■new　… 無くても処理中に生成されます
┣・itextsharp.dll
┣・pdf_split.ps1
┗・分割したいPDFファイル</code></pre>



<h2 class="wp-block-heading"><span id="toc3">iTextSharpの準備</span></h2>



<p>こちらのページからバージョンを選択します。<br>ページ下部の<span class="bold-red">「+ Show more」をクリック</span>するとさらにバージョンが出てきます。</p>



<div class="wp-block-cocoon-blocks-blogcard blogcard-type bct-detail">

<a rel="noopener" href="https://www.nuget.org/stats/packages/iTextSharp?groupby=Version" title="
        NuGet Gallery
        | Package Downloads for iTextSharp
    " class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Fwww.nuget.org%2Fstats%2Fpackages%2FiTextSharp%3Fgroupby%3DVersion?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">
        NuGet Gallery
        | Package Downloads for iTextSharp
    </div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://www.nuget.org/stats/packages/iTextSharp?groupby=Version" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">www.nuget.org</div></div></div></div></a>
</div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="972" height="446" src="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_3.png" alt="" class="wp-image-5287" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_3.png 972w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_3-300x138.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_3-768x352.png 768w" sizes="auto, (max-width: 972px) 100vw, 972px" /></figure>



<p><span class="bold-red">「Download package」</span>からインストールしてください。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1013" height="607" src="https://nyanblog2222.com/wp-content/uploads/2023/08/image.png" alt="" class="wp-image-5283" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/image.png 1013w, https://nyanblog2222.com/wp-content/uploads/2023/08/image-300x180.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/image-768x460.png 768w" sizes="auto, (max-width: 1013px) 100vw, 1013px" /></figure>



<p>ファイルが<span class="bold-red">「itextsharp.???.nupkg」</span>でダウンロードされますが、<span class="marker-under">zipファイルなので解凍してください</span>。</p>



<p>出来ない場合はitextsharp.???<span class="bold-red">.nupkg</span>をitextsharp.???<span class="bold-red">.zip</span>に名前を変更すると右クリックでも解凍できると思います。<br>※ ???はバージョンです。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="814" height="254" src="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_2.png" alt="" class="wp-image-5286" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_2.png 814w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_2-300x94.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/20230827_2-768x240.png 768w" sizes="auto, (max-width: 814px) 100vw, 814px" /></figure>



<p>「itextsharp.???\lib\<span class="bold-red">itextsharp.dll</span>」ファイルを使用するので、<br>powershellのファイルが置いてある場所にコピーしてください。</p>



<pre class="wp-block-code python"><code>■どこかのフォルダ
┣■new　… 無くても処理中に生成されます
┣・<span class="bold-red">itextsharp.dll</span>
┣・pdf_split.ps1
┗・分割したいPDFファイル</code></pre>



<p>■：フォルダ<br>・：ファイル</p>



<h2 class="wp-block-heading"><span id="toc4">コード</span></h2>



<p>以下がpdf_split.ps1のコードになります。<br>解説はコメントに記載しました。</p>



<p>※ <span class="bold-red">$args</span>というのは引数が入った配列で$args[0]は第1引数になります。<br>この後実行する際に出てきます。</p>



<pre class="wp-block-code python"><code># 現在のディレクトリを取得
$currentDir = Get-Location
Set-Location $currentDir

# itextsharp.dllのロード
# 絶対パスを記載してください。
&#91;System.Reflection.Assembly]::LoadFrom("C:\？？？\itextsharp.dll");

# 分割PDFの生成先フォルダパス
if(-! (Test-Path "./new")) {
    New-Item new -ItemType Directory
}
$destFolderPath = Join-Path $currentDir "new"

# inputのPDFパスを設定し、readerを生成
$srcPath = $args&#91;0]
$pdfReader = New-Object iTextSharp.text.pdf.PdfReader($srcPath)

# ファイル名（拡張子なし）
$fileName = &#91;System.IO.Path]::GetFileNameWithoutExtension($srcPath)

# ページ数取得し、ページ単位でfor文を回す
$pages = $pdfReader.NumberOfPages
for($page = 1; $page -le $pages; $page++) {

    # 出力する分割PDFのファイルパスを設定
    $destPath = Join-Path $destFolderPath ($fileName + "_" + $page + ".pdf")

    # ファイル生成に必要なオブジェクトを生成
    $fileStream = New-Object System.IO.FileStream($destPath, &#91;System.IO.FileMode]::Create)
    $document = New-Object iTextSharp.text.Document($pdfReader.GetPageSize($page))
    $pdfWriter = &#91;iTextSharp.text.pdf.PdfWriter]::GetInstance($document, $fileStream)

    # PDFファイルをオープンし、新規ページを作成
    $document.Open()
    $document.NewPage() | Out-Null

    # ページを読み込み、先ほど作成した新規ページに読み込んだページを書き込みます。
    $readPage = $pdfWriter.GetImportedPage($pdfReader, $page)
    $pdfWriter.DirectContent.AddTemplate($readPage, 0, 0)

    # reader以外のオブジェクトをクローズ
    $document.Close()
    $fileStream.Close()
    $pdfWriter.Close()
}
# 全てのページの処理が完了後readerをクローズ
$pdfReader.Close()
</code></pre>



<h2 class="wp-block-heading"><span id="toc5">実行</span></h2>



<p>Windows Powershellを起動します。</p>



<h3 class="wp-block-heading"><span id="toc6">実行コマンド</span></h3>



<p>cdコマンドでカレントディレクトリを変更</p>



<pre class="wp-block-code python"><code>cd ps1ファイルがあるディレクトリ</code></pre>



<p>pdfファイルの絶対パスを引数にpdf_split.ps1を実行</p>



<pre class="wp-block-code python"><code>./pdf_split.ps1 "pdfファイルの絶対パス"</code></pre>



<p>これでnewフォルダに分割pdfができあがります！</p>



<h3 class="wp-block-heading"><span id="toc7">フォルダ</span></h3>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="853" height="285" src="https://nyanblog2222.com/wp-content/uploads/2023/08/4.png" alt="" class="wp-image-5305" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/4.png 853w, https://nyanblog2222.com/wp-content/uploads/2023/08/4-300x100.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/4-768x257.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><figcaption class="wp-element-caption">実行後</figcaption></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="853" height="257" src="https://nyanblog2222.com/wp-content/uploads/2023/08/3.png" alt="" class="wp-image-5304" srcset="https://nyanblog2222.com/wp-content/uploads/2023/08/3.png 853w, https://nyanblog2222.com/wp-content/uploads/2023/08/3-300x90.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/08/3-768x231.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><figcaption class="wp-element-caption">newフォルダの中身</figcaption></figure>



<p></p>



<h2 class="wp-block-heading"><span id="toc8">補足</span></h2>



<p>.Netがないと動かないかもしれませんので、その場合はインストールをお願いします。</p>
<p>投稿 <a href="https://nyanblog2222.com/windows/5271/">【PowerShell】PDFを1ページずつ分ける方法【簡単】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/windows/5271/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【簡単】DockerでPHPとMySQLの環境構築【コンテナ仮想化】</title>
		<link>https://nyanblog2222.com/programming/cmd/5184/</link>
					<comments>https://nyanblog2222.com/programming/cmd/5184/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Sun, 26 Mar 2023 09:28:33 +0000</pubDate>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[コマンドプロンプト]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[環境構築]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=5184</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2.png 1280w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />目次 DockerとはDockerをインストールファイル構成ファイル作成docker-compose.yml ファイルコンテナ[php]：Dockerfile コンテナ[mysql]：Dockerfile index.p [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/cmd/5184/">【簡単】DockerでPHPとMySQLの環境構築【コンテナ仮想化】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2.png 1280w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2023/03/20230328_2-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">Dockerとは</a></li><li><a href="#toc2" tabindex="0">Dockerをインストール</a></li><li><a href="#toc3" tabindex="0">ファイル構成</a></li><li><a href="#toc4" tabindex="0">ファイル作成</a><ol><li><a href="#toc5" tabindex="0">docker-compose.yml ファイル</a></li><li><a href="#toc6" tabindex="0">コンテナ[php]：Dockerfile </a></li><li><a href="#toc7" tabindex="0">コンテナ[mysql]：Dockerfile </a></li><li><a href="#toc8" tabindex="0">index.php ファイル</a></li></ol></li><li><a href="#toc9" tabindex="0">動作確認</a><ol><li><a href="#toc10" tabindex="0">localhostに接続</a></li><li><a href="#toc11" tabindex="0">コンテナ内に入ってphp実行確認</a></li><li><a href="#toc12" tabindex="0">MySQL接続、SQL実行</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">Dockerとは</span></h2>



<p>Dockerは<span class="bold-red">コンテナ仮想化</span>を使ったアプリケーションを開発・配置・実行するためのオープンプラットフォームです。</p>



<div class="wp-block-cocoon-blocks-blank-box-1 blank-box block-box">
<p>簡単に利点をいうと、<br>・環境構築ファイルを共有することで<span class="marker-under">簡単に同じ環境を提供可能</span><br>・<span class="marker-under">環境の流用や変更が簡単</span><br>・<span class="marker-under">軽量で高速</span>に起動、停止が可能</p>
</div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/07/2645602.png" alt="みみねこ" class="speech-icon-image"/></figure><div class="speech-name">みみねこ</div></div><div class="speech-balloon">
<p>詳しいことが知りたい方は色々調べてみてください♪<br>（気が向けば別記事で書きます）</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">Dockerをインストール</span></h2>



<p>Dockerをインストールします。<br>以下のリンクからダウンロードしてインストールを行ってください。</p>



<p><a rel="noopener" href="https://www.docker.com/get-started/" target="_blank">Dockerのダウンロードはこちらから</a></p>



<p>コマンドプロンプトやVSCodeのターミナルなどで<br><span class="marker-under">バージョン確認のコマンドを実行</span>し、インストールされていることを確認できます。</p>



<p>■コマンド &#8211; バージョン確認<br><code>docker -v</code></p>



<p>■コマンド結果<br>このようにバージョンが出てきたらOKです。</p>



<pre class="wp-block-code plaintext"><code>&gt; docker -v 
Docker version 20.10.13, build a224086</code></pre>



<h2 class="wp-block-heading"><span id="toc3">ファイル構成</span></h2>



<p>今回は以下のファイル構成で環境構築しています。<br>慣れたら自分の好きなファイル構成にしていただいて構いません。</p>



<p>□：ディレクトリ名<br>・：ファイル名</p>



<pre class="wp-block-code plaintext"><code>□app
├□docker
││
│├□mysql
││├□data
││└・Dockerfile
││
│└□php
│  └・Dockerfile
│
├□html
│└・index.php
│
└・docker-compose.yml</code></pre>



<p>※1 mysql\dataディレクトリの中身は空で作成してください。</p>



<h2 class="wp-block-heading"><span id="toc4">ファイル作成</span></h2>



<p>各ファイルの内容を載せています。</p>



<h3 class="wp-block-heading"><span id="toc5">docker-compose.yml ファイル</span></h3>



<pre class="wp-block-code plaintext"><code>version: '3'
services:
  php:
    build:
      context: ./docker/php
      dockerfile: Dockerfile
    volumes:
      - ./src:/var/www/html
    ports:
      - 8080:80
    depends_on:
      - db

  db:
    build:
      context: ./docker/mysql
      dockerfile: Dockerfile
    volumes:
      - ./docker/mysql/data:/var/lib/mysql
    ports:
      - 3306:3306
    environment:
      - MYSQL_ROOT_PASSWORD=pass
      - MYSQL_DATABASE=app
      - MYSQL_USER=user
      - MYSQL_PASSWORD=root
</code></pre>



<p>ぱっと見分かる箇所は説明抜いてます。</p>



<p>volumes:<br>　右側：ローカル上のディレクトリパス（docker-compose.ymlからの相対パス）<br>　左側：永続化したいサーバーフォルダ</p>



<p>build:<br>　context：build実行パス<br>　dockerfile：Dockerファイル名</p>



<p>depends_on:<br>　db：dbコンテナを先に起動</p>



<h3 class="wp-block-heading"><span id="toc6">コンテナ[php]：Dockerfile </span></h3>



<pre class="wp-block-code plaintext"><code>FROM php:8.0-apache

RUN apt-get update &amp;&amp; apt-get install -y libonig-dev &amp;&amp; \
    docker-php-ext-install pdo_mysql mysqli
</code></pre>



<h3 class="wp-block-heading"><span id="toc7">コンテナ[mysql]：Dockerfile </span></h3>



<pre class="wp-block-code plaintext"><code>FROM mysql:8.0.20</code></pre>



<h3 class="wp-block-heading"><span id="toc8">index.php ファイル</span></h3>



<pre class="wp-block-code php"><code>&lt;!DOCTYPE html&gt;
&lt;html lang="ja"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;環境構築&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;p&gt;&lt;?php print ("Hello World!");?&gt;&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre>



<p>localhostに接続して表示する内容を記載しています。</p>



<h2 class="wp-block-heading"><span id="toc9">動作確認</span></h2>



<h3 class="wp-block-heading"><span id="toc10">localhostに接続</span></h3>



<p>■コマンド &#8211; コンテナ起動<br>（-d）はバックグラウンドで実行</p>



<p><code>docker compose up -d</code></p>



<p>■ローカル環境にアクセス<br><code>http://localhost:8080</code></p>



<p><span class="marker-under">「Hello World!」</span>と画面に表示</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="232" height="137" src="https://nyanblog2222.com/wp-content/uploads/2023/03/20230325.png" alt="" class="wp-image-5248"/><figcaption class="wp-element-caption"><code>http://localhost:8080</code>に接続</figcaption></figure>



<p>■コンテナ名を変更したとき<br>変更前のコンテナが残っているので、一度削除しておく<br>※ 削除せずにコンテナ起動すると警告が出る</p>



<p><code>docker compose down --remove-orphans</code></p>



<h3 class="wp-block-heading"><span id="toc11">コンテナ内に入ってphp実行確認</span></h3>



<p>phpコンテナに入ってphpファイルを実行確認する場合</p>



<p>■phpコンテナに入る<br><code>docker compose exec php bash</code></p>



<p>■phpファイル実行<br><code>php index.php</code></p>



<p>ファイルを実行します。<br>[index.php]ファイルの中身を<br>[echo Hello World!]だけにした方が分かりやすいかもしれません。</p>



<p>■bash終了<br><code>exit</code></p>



<h3 class="wp-block-heading"><span id="toc12">MySQL接続、SQL実行</span></h3>



<p>■MySQLコンテナでMySQL接続<br><code>docker compose exec db mysql -u root -ppass</code></p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/07/2645602.png" alt="みみねこ" class="speech-icon-image"/></figure><div class="speech-name">みみねこ</div></div><div class="speech-balloon">
<p><span class="marker-under">db[コンテナ名]<br>pass[MYSQL_ROOT_PASSWORD]</span><br>は[docker-compose.yml]で設定した値です。</p>
</div></div>



<pre class="wp-block-code php"><code>&gt; docker compose exec db mysql -u root -ppass
Welcome to the MySQL monitor.  Commands end with ; or \g.
・・・
mysql&gt;</code></pre>



<p>上記のように<br><code>mysql&gt;</code>とSQLが入力できる状態であればOKです。</p>



<p><code>SHOW DATABASES;</code><br>などSQL文を実行して試してみてください。</p>



<p>これで環境構築は完了です。</p>



<p>これから色々試してみる予定なので、<br>phpのiniファイルを追加したりcnfファイルを追加した<br>よかったら参考にしてみてください。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/07/2645602.png" alt="みみねこ" class="speech-icon-image"/></figure><div class="speech-name">みみねこ</div></div><div class="speech-balloon">
<p>いやぁ…。色々はまりました。<br>はまった点を記載すべきなのですが、開発環境も異なるため解決方法も異なる可能性が高く一つ一つネットで調べるのが速いと思います。</p>
</div></div>
<p>投稿 <a href="https://nyanblog2222.com/programming/cmd/5184/">【簡単】DockerでPHPとMySQLの環境構築【コンテナ仮想化】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/programming/cmd/5184/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【PowerShell】【キーで連番】ファイル名を一括でリネームする方法</title>
		<link>https://nyanblog2222.com/programming/powershell/2486/</link>
					<comments>https://nyanblog2222.com/programming/powershell/2486/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Tue, 22 Sep 2020 10:01:56 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[リネーム]]></category>
		<category><![CDATA[一括]]></category>
		<category><![CDATA[連番]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=2486</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2022/11/124.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/124.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />こんにちは！前回はファイル名を一括でリネームする方法について、ご紹介いたしました。今回はファイル名に連番を振る際にキーを設定してキーの値が変わった時に連番が初期化する方法をご紹介します。 前回の記事はこちらです！良かった [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/powershell/2486/">【PowerShell】【キーで連番】ファイル名を一括でリネームする方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2022/11/124.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/124.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/124-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />
<p>こんにちは！前回はファイル名を一括でリネームする方法について、ご紹介いたしました。<br>今回はファイル名に連番を振る際にキーを設定してキーの値が変わった時に連番が初期化する方法をご紹介します。</p>



<p>前回の記事はこちらです！<br>良かったらご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-nyanblog wp-block-embed-nyanblog"><div class="wp-block-embed__wrapper">

<a href="https://nyanblog2222.com/programming/powershell/2366/" title="【PowerShell】【簡単】ファイル名を一括でリネームする方法" class="blogcard-wrap internal-blogcard-wrap a-wrap cf"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2022/11/123-160x90.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/123-160x90.png 160w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-120x68.png 120w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-320x180.png 320w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-376x212.png 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【PowerShell】【簡単】ファイル名を一括でリネームする方法</div><div class="blogcard-snippet internal-blogcard-snippet">こんにちは！皆さんはファイル名を変更する時にどのように変更していますか？ ファイルによって特別なファイル名にしたい場合は手入力せざるをえませんが、決まりのある命名規則に合わせてファイル名を変更するのに毎回手入力するのは時間がもったいないです...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://nyanblog2222.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">nyanblog2222.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2020.09.20</div></div></div></div></a>
</div></figure>



<p>※ 筆者がC#での書き方が慣れているため、もっとより良い記述方法があるかもしれません。<br>その際は記事を更新させていただきます。</p>



<p>前回の記事では、Rename-Itemを使用していましたが、今回は出力先フォルダを変更したかったので、<strong><span style="color:#b78d4a" class="has-inline-color">Copy-Item</span></strong>を使用して、ファイル名を変更しながらコピー処理をする方法を取りました。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">やりたいこと</a></li><li><a href="#toc2" tabindex="0">サンプルコード</a></li><li><a href="#toc3" tabindex="0">終わりに</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">やりたいこと</span></h2>



<p>こちらが処理前のディレクトリ構成です。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="800" height="565" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-22_17-25-38_No-00-min.png" alt="処理前のフォルダ構成" class="wp-image-2489" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-22_17-25-38_No-00-min.png 800w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-22_17-25-38_No-00-min-300x212.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-22_17-25-38_No-00-min-768x542.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></figure>



<p>各画像ファイル名の頭4桁「a001」等をキーに連番を振っていきます。<br>例えば「a001」から「a002」に変わると、また連番が001始まりになります。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="800" height="565" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_out_2020-9-22_18-44-42_No-00-min.png" alt="処理後のフォルダ構成のイメージ" class="wp-image-2490" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_out_2020-9-22_18-44-42_No-00-min.png 800w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_out_2020-9-22_18-44-42_No-00-min-300x212.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_out_2020-9-22_18-44-42_No-00-min-768x542.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></figure>



<h2 class="wp-block-heading"><span id="toc2">サンプルコード</span></h2>



<pre class="wp-block-code"><code># １．フォルダパス設定
$in_folder = "c:\sample\in"
$out_folder = "c:\sample\out"

# ２．処理するファイル一覧情報を取得
$file_list = Get-ChildItem $in_folder | sort Name

# ３．連番付与するための変数を初期化
$cnt = 0
$hold_key = ""
foreach($file in $file_list){
    # ４．コピー元パス設定
    $in_file_path = $in_folder + "\" + $file.Name

    # ５．連番設定（キーブレイク）
    $now_key = $file.Name.Substring(0, 4)
    if($hold_key -ne $now_key){
        $cnt = 0
        $hold_key = $now_key
    }
    $cnt++

    # ６．コピー先パス設定
    $out_file_path = $out_folder + "\" + $now_key + "_picture_" + $cnt.ToString("D3") + $file.Extension

    # ７．ファイルコピー
    Copy-Item $in_file_path $out_file_path
}</code></pre>



<p>以下、コードの解説です。</p>



<p>１．$in_folder、$out_folderにそれぞれコピー元とコピー先のフォルダのパスを設定</p>



<p>２．処理するファイルの情報を一覧で取得<br>また、ファイル名順で処理するよう、取得する際にファイル名でソートをかける</p>



<p>３．連番を付与する変数（$cnt、$hold_key）を初期化</p>



<p>４．コピー元ファイルパスを設定</p>



<p>５．連番のカウント処理<br>1つ前のファイル名とキーが異なる場合、連番リセット</p>



<p>６．コピー先ファイルパスを設定</p>



<p>７．ファイルコピー処理</p>



<p>４～７まで全ファイル分処理を続ける</p>



<p>このコードを実行すると、コピー先フォルダに画像ファイルがリネームされてコピーされます。</p>



<h2 class="wp-block-heading"><span id="toc3">終わりに</span></h2>



<p>いかがでしたでしょうか？<br>前回同様、コードをコピペして少し変更するだけで簡単に試せるので是非やってみてください！</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/powershell/2486/">【PowerShell】【キーで連番】ファイル名を一括でリネームする方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/programming/powershell/2486/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【PowerShell】【簡単】ファイル名を一括でリネームする方法</title>
		<link>https://nyanblog2222.com/programming/powershell/2366/</link>
					<comments>https://nyanblog2222.com/programming/powershell/2366/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Sun, 20 Sep 2020 09:00:00 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[ファイル名]]></category>
		<category><![CDATA[リネーム]]></category>
		<category><![CDATA[一括]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=2366</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2022/11/123.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/123.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />こんにちは！皆さんはファイル名を変更する時にどのように変更していますか？ ファイルによって特別なファイル名にしたい場合は手入力せざるをえませんが、決まりのある命名規則に合わせてファイル名を変更するのに毎回手入力するのは時 [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/powershell/2366/">【PowerShell】【簡単】ファイル名を一括でリネームする方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2022/11/123.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/123.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/123-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />
<p>こんにちは！皆さんはファイル名を変更する時にどのように変更していますか？</p>



<p>ファイルによって特別なファイル名にしたい場合は手入力せざるをえませんが、決まりのある命名規則に合わせてファイル名を変更するのに毎回手入力するのは時間がもったいないです！</p>



<p>今回はPowerShellを使用してファイル名を一括でリネームする方法をサンプル付きでご紹介してきます。</p>



<p>主に使用するコマンドレットはファイル名変更に使用するRename-Itemです。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">1つのファイル名を変更</a></li><li><a href="#toc2" tabindex="0">複数のファイル名を一括に変更</a></li><li><a href="#toc3" tabindex="0">ファイル名に命名規則を指定して連番を付ける</a></li><li><a href="#toc4" tabindex="0">終わりに</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">1つのファイル名を変更</span></h2>



<p>さっそくサンプルコードをご紹介していきましょう。</p>



<p><span style="color:#b78d4a" class="has-inline-color">・<strong>Rename-Item</strong></span>&nbsp;-Path&nbsp;&#8220;名前を変更するファイルパス&#8221;&nbsp;-NewName&nbsp;&#8220;新しいファイル名&#8221;</p>



<p>Rename-Item：名前を変更<br>Pathパラメータ：名前を変更するファイルパスを設定<br>NewNameパラメータ：新しいファイル名を設定</p>



<pre class="wp-block-code python"><code>Rename-Item -Path 'C:\sample\in\345525_s.jpg' -NewName 'nyan_001.jpg'</code></pre>



<p>実行すると、ファイル名が「345525_s.jpg」から「nyan_001.jpg」に変更されました。</p>



<h2 class="wp-block-heading"><span id="toc2">複数のファイル名を一括に変更</span></h2>



<p>先ほどの例だと1ファイルずつしか変更できませんでした。</p>



<p>これでは実用性はあまりないと言えます。。。</p>



<p>次はファイル名の置換する文字列を指定して一度にファイル名を変更していきます。</p>



<p>・<strong><span style="color:#b78d4a" class="has-inline-color">Get-ChildItem</span></strong>&nbsp; &#8220;処理対象ファイルの条件&#8221; |&nbsp;<strong><span style="color:#b78d4a" class="has-inline-color">Rename-Item</span></strong> -NewName{ $_.Name&nbsp;-Replace&nbsp;&#8220;置換する文字列&#8221;, &#8220;置換後の文字列&#8221; }</p>



<p>Get-ChildItem &#8220;条件&#8221;：ディレクトリ内のファイルのうち、指定した条件に当てはまるファイルの情報を取得<br>Replace演算子：文字列を置換</p>



<p>Get-ChildItemで条件を付けることにより、<strong><span style="color:#b78d4a" class="has-inline-color">条件に当てはまるファイルに対して一括でファイル名を変更</span></strong>することができます。</p>



<pre class="wp-block-code python"><code>Get-ChildItem "C:\sample\in\*.jpg" | Rename-Item -NewName{$_.Name -Replace "\.jpg",".jpeg"}</code></pre>



<p>このコマンドを一度実行すると、ファイル拡張子が「jpg」から「jpeg」に変更されました。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="781" height="519" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min.png" alt="実行前のファイル一覧" class="wp-image-2409" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min.png 781w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min-300x199.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min-768x510.png 768w" sizes="auto, (max-width: 781px) 100vw, 781px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="781" height="519" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-13-20_No-00-min.png" alt="実行後のファイル一覧" class="wp-image-2410" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-13-20_No-00-min.png 781w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-13-20_No-00-min-300x199.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-13-20_No-00-min-768x510.png 768w" sizes="auto, (max-width: 781px) 100vw, 781px" /></figure>



<h2 class="wp-block-heading"><span id="toc3">ファイル名に命名規則を指定して連番を付ける</span></h2>



<p>最後に複数のファイルに対して命名規則を指定して連番を付けてファイル名を一括で変更していきます。</p>



<p>・<strong><span style="color:#b78d4a" class="has-inline-color">Get-ChildItem</span></strong>&nbsp;&#8220;処理対象ファイルの条件&#8221;&nbsp;| <strong><span style="color:#b78d4a" class="has-inline-color">Sort</span></strong> Name |&nbsp;<strong><span style="color:#b78d4a" class="has-inline-color">%</span></strong> { $i = 1} { $Newname = &#8220;命名規則&#8221; + $i.ToString(&#8220;000&#8221;) + $_.extension; <strong><span style="color:#b78d4a" class="has-inline-color">Rename-item</span></strong> $_ $Newname; $i++ }</p>



<p>Get-ChildItem &#8220;条件&#8221;：処理対象のファイルを指定<br>Sort Name：ファイル名でソート<br>％：Foreach-Objectのエイリアス<br>Rename-Item：名前を変更</p>



<p>$Newname：変更後のファイル命名規則<br>$i.ToString(&#8220;000&#8221;)：3桁0詰め表記</p>



<p>先ほどと同様に処理対象のファイルの条件で複数のファイルを一括で処理することができます。</p>



<p>また、ファイル名でソートすることにより、連番を付与したファイルの順番がエクスプローラで表示された順番そのままになります。</p>



<pre class="wp-block-code python"><code>Get-ChildItem "C:\sample\in\*.jpg" | Sort Name | % { $i = 1} { $Newname = "picture_" + $i.ToString("000") + $_.extension; Rename-item $_ $Newname; $i++ }</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="781" height="519" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min.png" alt="実行前のファイル一覧" class="wp-image-2409" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min.png 781w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min-300x199.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_22-10-16_No-00-min-768x510.png 768w" sizes="auto, (max-width: 781px) 100vw, 781px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="781" height="519" src="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_23-12-12_No-00-min.png" alt="実行後のファイル一覧（連番付与後）" class="wp-image-2423" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_23-12-12_No-00-min.png 781w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_23-12-12_No-00-min-300x199.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/SnapCrab_in_2020-9-19_23-12-12_No-00-min-768x510.png 768w" sizes="auto, (max-width: 781px) 100vw, 781px" /></figure>



<h2 class="wp-block-heading"><span id="toc4">終わりに</span></h2>



<p>いかがでしたでしょうか？<br>コードをコピペして少し変更するだけで簡単に試せるので是非やってみてください！</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/powershell/2366/">【PowerShell】【簡単】ファイル名を一括でリネームする方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/programming/powershell/2366/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
