﻿<?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>Windows  |  Web Creators Hub</title>
	<atom:link href="https://web-creators-hub.com/category/windows/feed/" rel="self" type="application/rss+xml" />
	<link>https://web-creators-hub.com</link>
	<description>WEB技術などの情報をわかりやすく配信するメディア</description>
	<lastBuildDate>Wed, 08 Feb 2023 01:56:31 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.8.2</generator>
	<item>
		<title>【簡単】PowershellでXML構造ファイルをオブジェクト化して読み込む</title>
		<link>https://web-creators-hub.com/windows/powershell/xml/</link>
		<pubDate>Tue, 25 Feb 2020 07:51:27 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=684</guid>
		<description><![CDATA[PowershellではXMLファイルを簡単に扱うことができます。XMLファイルを見やすく別のファイルに保存するときなどに利用します。 &#038;n...]]></description>
				<content:encoded><![CDATA[<p>PowershellではXMLファイルを簡単に扱うことができます。XMLファイルを見やすく別のファイルに保存するときなどに利用します。<br />
&nbsp;</p>
<h2>XMLファイルの内容をオブジェクトにする</h2>
<p>XMLの構造はツリー構造です。フォルダ構造とほぼ同じなのでフォルダのPAHTを記載するようにデータにアクセスします。</p>
<p>例えばPATHをオブジェクト風に記載すると以下のようになります。<br />
・PATH<br />
C:/Users/test/Desktop/test<br />
↓<br />
・オブジェクト風<br />
pathObj.Users.test.Desktop.test</p>
<p>では実際にpowershellを利用しXMLをオブジェクト化します。<br />
以下のサンプルXMLをデスクトップにtest.xmlファイルとして保存してください。</p>
<p>&nbsp;</p>
<h3>サンプルXML</h3>
<pre class="brush: bash; title: ; notranslate">
&lt;TestList version=&quot;2&quot; revision=&quot;1&quot;&gt;
	&lt;Item category=&quot;test&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;1&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;テスト1&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;テスト1の内容&lt;/Description&gt;
		&lt;/Item&gt;
	&lt;Item category=&quot;test&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;2&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;テスト2&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;テスト2の内容&lt;/Description&gt;
	&lt;/Item&gt;
	&lt;Item category=&quot;test&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;3&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;テスト3&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;テスト3の内容&lt;/Description&gt;
	&lt;/Item&gt;
	&lt;Item category=&quot;news&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;4&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;ニュース1&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;ニュース1の内容&lt;/Description&gt;
	&lt;/Item&gt;
	&lt;Item category=&quot;news&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;5&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;ニュース2&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;ニュース2の内容&lt;/Description&gt;
	&lt;/Item&gt;
	&lt;Item category=&quot;news&quot;&gt;
		&lt;ID type=&quot;int&quot;&gt;6&lt;/ID&gt;
		&lt;Name type=&quot;string&quot;&gt;ニュース3&lt;/Name&gt;
		&lt;Description type=&quot;text&quot;&gt;ニュース3の内容&lt;/Description&gt;
	&lt;/Item&gt;
&lt;/TestList&gt;
</pre>
<p>コードを記載するためtest.ps1ファイルを作成します。</p>
<p>test.ps1を右クリック→編集をクリックしファイルを開きます。<br />
以下のコードをコピペします。</p>
<pre class="brush: bash; title: ; notranslate">
# 現在のパス取得
$scriptPath = [System.IO.Path]::GetDirectoryName($myInvocation.MyCommand.Definition)

# xmlファイルのPATH
$source = &quot;$scriptPath\test.xml&quot;

# xmlオブジェクト作成
$xmlObj = (Get-Content -path &quot;$source&quot;)
# データはループさせて取得
foreach ($List in $xmlObj.TestList) {
        foreach ($item in $List.Item) {
            echo $item.Name.innerText
        }
}
</pre>
<p>&nbsp;</p>
<h2>説明</h2>
<p>&nbsp;</p>
<h3>1.オブジェクト化</h3>
<pre class="brush: bash; title: ; notranslate">
$scriptPath = [System.IO.Path]::GetDirectoryName($myInvocation.MyCommand.Definition)
$source = &quot;$scriptPath\test.xml&quot;
$xmlObj = (Get-Content -path &quot;$source&quot;)
</pre>
<p>XMLファイルをオブジェクト化するためXMLファイルのPATHを取得します。<br />
ファイルのデータを一行づつ取得するGet-Contentコマンドに使用します。これでは普通テキストファイルのような処理になっていまいますのでXMLを扱えるように全体をXMLにキャストします。</p>
<h3>2.要素の値を取得</h3>
<pre class="brush: bash; title: ; notranslate">
foreach ($List in $xmlObj.TestList) {
    foreach ($item in $List.Item) {
       echo $item.Name.innerText
    }
}
</pre>
<p>要素の値を取得する場合はinnerTextプロパティを使用します。<br />
オブジェクト.innerText<br />
&nbsp;</p>
<h3>3.属性の値を取得</h3>
<pre class="brush: bash; title: ; notranslate">
foreach ($List in $xmlObj.TestList) {
    foreach ($item in $List.Item) {
       echo $item.GetAttribute(&quot;category&quot;)
    }
}
</pre>
<p>属性の値を取得する場合はGetAttributeメソッドを使用します。<br />
オブジェクト.GetAttribute(&#8220;属性名&#8221;)</p>
<p>&nbsp;</p>
<h2>特定の条件により処理する</h2>
<p>if文を利用し特定の条件にマッチした値のみ取得します。<br />
例ではItemのcategory属性の値が「test」になっている要素の値を取得します。</p>
<pre class="brush: bash; title: ; notranslate">
# 現在のパス取得
$scriptPath = [System.IO.Path]::GetDirectoryName($myInvocation.MyCommand.Definition)

# xmlファイルのPATH
$source = &quot;$scriptPath\test.xml&quot;

# xmlオブジェクト作成
$xmlObj = (Get-Content -path &quot;$source&quot;)
# データはループさせて取得
foreach ($List in $xmlObj.TestList) {
        foreach ($item in $List.Item) {
            if($item.GetAttribute(&quot;category&quot;) -eq &quot;test&quot;){
             echo $item.Name.innerText
             }
        }
}
</pre>
]]></content:encoded>
			</item>
		<item>
		<title>Windows10おすすめキッティング コマンド集</title>
		<link>https://web-creators-hub.com/windows/rec-kitting/</link>
		<pubDate>Tue, 10 Dec 2019 07:28:15 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=521</guid>
		<description><![CDATA[アカウント系の設定、Windowsの設定、右下にでる通知系をオフ、不要なものを削除が基本的なキッティング内容になります。必要なコマンドをコピ...]]></description>
				<content:encoded><![CDATA[<p>アカウント系の設定、Windowsの設定、右下にでる通知系をオフ、不要なものを削除が基本的なキッティング内容になります。必要なコマンドをコピペ使用します。</p>
<h2>Windows10 バージョン確認</h2>
<pre class="brush: bash; title: ; notranslate">
winver
</pre>
<h2>adminユーザー有効化</h2>
<pre class="brush: bash; title: ; notranslate">
net user administrator /active:yes
</pre>
<h2>adminパスワード設定</h2>
<pre class="brush: bash; title: ; notranslate">
net user administrator パスワード
</pre>
<h2>ドメイン参加</h2>
<pre class="brush: bash; title: ; notranslate">
wmic ComputerSystem WHERE &quot;name='%computername%'&quot; CALL JoinDomainOrWorkgroup Name=&quot;ドメイン名&quot; Username=&quot;ドメイン管理者ユーザー&quot; 
Password=&quot;パスワード&quot; FJoinOptions=3
</pre>
<h2>拡張子表示(再起動後反映)</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced&quot; /v &quot;HideFileExt&quot; /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>隠しファイル表示(再起動後反映)</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced&quot; /v &quot;Hidden&quot; /t REG_DWORD /d &quot;1&quot; /f
</pre>
<h2>ユーザーアカウント削除</h2>
<p>コマンドではユーザーフォルダの削除ができないため手動のほうがいい。</p>
<pre class="brush: bash; title: ; notranslate">
compmgmt.msc
</pre>
<p>→アカウントを削除</p>
<h2>OneDriveをオフ</h2>
<pre class="brush: bash; title: ; notranslate">
gpedit.msc
</pre>
<p>コンピューター構成→管理用テンプレート→Windowsコンポーネント→OneDrive→使用できないようにする→有効</p>
<h2>Windows Updateの自動更新解除設定</h2>
<pre class="brush: bash; title: ; notranslate">
gpedit.msc
</pre>
<p>コンピューター構成→管理用テンプレート→Windowsコンポーネント→Windows Update → 自動更新を構成する→無効</p>
<h2>コルナタ無効化</h2>
<pre class="brush: bash; title: ; notranslate">
gpedit.msc
</pre>
<p>コンピューター構成→管理用テンプレート→Windowsコンポーネント→検索→Cortanaの許可する→無効</p>
<h2>セキュリティとメンテナンス(メッセージオフ)</h2>
<pre class="brush: bash; title: ; notranslate">
control.exe /name Microsoft.ActionCenter
</pre>
<p>セキュリティとメンテナンスの設定を変更 → チェックをすべて外す</p>
<h2>システムアイコンオフ(位置情報、アクションセンター)</h2>
<pre class="brush: bash; title: ; notranslate">
start ms-settings:taskbar
</pre>
<p>システムアイコンのオン/オフの切り替え</p>
<h2>Windows Deffender 無効</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender&quot; /v &quot;DisableAntiSpyware&quot; /d &quot;1&quot; /t REG_DWORD /f</pre>
<h2>firewall 無効</h2>
<pre class="brush: bash; title: ; notranslate">
netsh advfirewall set allprofiles state off
</pre>
<h2>タスクバーpeople非表示</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People&quot; /v &quot;PeopleBand&quot; /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>通知とアクション非表示</h2>
<pre class="brush: bash; title: ; notranslate">
rem 「windowsへようこそ」
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager&quot; /v &quot;SubscribedContent-310093Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
rem 「windowsヒントやおすすめ」
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager&quot; /v &quot;SubscribedContent-338389Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
rem 「アプリやその他の送信者」
reg add &quot;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications&quot; /v &quot;ToastEnabled&quot; /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>画面中央の切替通知表示</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\SOFTWARE\Microsoft\IME\15.0\IMEJP\MSIME&quot; /v &quot;ShowImeModeNotification&quot; /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>プライバシー設定</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo&quot; /v &quot;Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Control Panel\International\User Profile&quot; /v &quot;HttpAcceptLanguageOptOut&quot; /t REG_DWORD /d &quot;1&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager&quot; /v &quot;SubscribedContent-338393Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager&quot; /v &quot;SubscribedContent-353694Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced&quot; /v &quot;Start_TrackProgs&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Input\TIPC&quot; /v &quot;Enabled&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Privacy&quot; /v &quot;TailoredExperiencesWithDiagnosticDataEnabled&quot; /t REG_DWORD /d &quot;0&quot; /f
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\DeviceAccess\Global\{2297E4E2-5DBE-466D-A12B-0F8286F0D9CA}&quot; /v &quot;Value&quot; /t REG_SZ /d &quot;Deny&quot; /f
</pre>
<h2>windowsアップデート無効</h2>
<pre class="brush: bash; title: ; notranslate">
rem WindowsUpdateの自動更新解除(レジストリ)
reg add HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate /v &quot;DisableOSUpgrade&quot; /t REG_DWORD /d 00000001 /f
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /v NoAutoUpdate /d 1 /t REG_DWORD /f

rem Winアップデートスケジュール無効化
schtasks /Change /DISABLE /TN &quot;\Microsoft\Windows\WindowsUpdate\Scheduled Start&quot;
schtasks /Change /DISABLE /TN &quot;\Microsoft\Windows\WindowsUpdate\sih&quot;

rem Winアップデートサービス停止
sc config wuauserv start= disabled
sc failure &quot;wuauserv&quot; reset=0 actions= &quot;&quot;/&quot;&quot;/&quot;&quot;
net stop wuauserv
</pre>
<h2>不要アプリの削除</h2>
<p>powershell起動<br />
以下コマンドをコピペ</p>
<pre class="brush: bash; title: ; notranslate">
Get-AppxPackage Microsoft.3DBuilder | Remove-AppxPackage                     # 3D Builder
Get-AppxPackage king.com.CandyCrushSodaSaga | Remove-AppxPackage             # Candy Crush Soda Saga
Get-AppxPackage DolbyLaboratories.DolbyAccess | Remove-AppxPackage           # Dolby Access
Get-AppxPackage Facebook.Facebook | Remove-AppxPackage                       # Facebook
Get-AppxPackage Microsoft.ZuneMusic | Remove-AppxPackage                     # Groove ミュージック
Get-AppxPackage KeeperSecurityInc.Keeper | Remove-AppxPackage                # Keeper
Get-AppxPackage 828B5831.HiddenCityMysteryofShadows | Remove-AppxPackage     # Hidden City アイテム探しアドベンチャー(FCU以降)
Get-AppxPackage NAVER.LINE* | Remove-AppxPackage                             # LINE
Get-AppxPackage 7EE7776C.LinkedInforWindows | Remove-AppxPackage             # LinkedIn(FCU以降)
Get-AppxPackage Microsoft.MicrosoftSolitaireCollection | Remove-AppxPackage  # Microsoft Solitaire Collection
Get-AppxPackage Microsoft.OfficeLens | Remove-AppxPackage                    # Office Lens
Get-AppxPackage Microsoft.Office.OneNote | Remove-AppxPackage                # OneNote
Get-AppxPackage Microsoft.People | Remove-AppxPackage                        # People
Get-AppxPackage Microsoft.Print3D | Remove-AppxPackage                       # Print3D(CFU以降)
Get-AppxPackage flaregamesGmbH.RoyalRevolt2 | Remove-AppxPackage             # RoyalRevolt 2
Get-AppxPackage 89006A2E.AutodeskSketchBook | Remove-AppxPackage             # SketchBook(FCU以降)
Get-AppxPackage Microsoft.SkypeApp | Remove-AppxPackage                      # Skypeを始めよう
Get-AppxPackage SpotifyAB.SpotifyMusic | Remove-AppxPackage                  # Spotify(FCU以降)
Get-AppxPackage Microsoft.MicrosoftStickyNotes | Remove-AppxPackage          # Sticky Notes
Get-AppxPackage *Twitter | Remove-AppxPackage                                # Twitter
Get-AppxPackage Microsoft.Microsoft3DViewer | Remove-AppxPackage             # View 3D
Get-AppxPackage Microsoft.XboxApp | Remove-AppxPackage                       # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxGameOverlay | Remove-AppxPackage               # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxIdentityProvider | Remove-AppxPackage          # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxSpeechToTextOverlay | Remove-AppxPackage       # Xbox(AU以降)
Get-AppxPackage Microsoft.MicrosoftOfficeHub | Remove-AppxPackage            # 新しいOffice を始めよう
Get-AppxPackage Microsoft.WindowsAlarms | Remove-AppxPackage                 # アラーム＆クロック
Get-AppxPackage Microsoft.WindowsCamera | Remove-AppxPackage                 # カメラ
Get-AppxPackage Microsoft.5220175982889 | Remove-AppxPackage                 # テレBing
Get-AppxPackage Microsoft.Getstarted | Remove-AppxPackage                    # ヒント／はじめに
Get-AppxPackage king.com.BubbleWitch3Saga | Remove-AppxPackage               # バブルウィッチ3(FCU以降)
Get-AppxPackage Microsoft.WindowsFeedbackHub | Remove-AppxPackage            # フィードバックHub
Get-AppxPackage Microsoft.MSPaint | Remove-AppxPackage                       # ペイント3D
Get-AppxPackage Microsoft.GetHelp | Remove-AppxPackage                       # 問い合わせ／ヘルプの表示
Get-AppxPackage Microsoft.WindowsSoundRecorder | Remove-AppxPackage          # ボイスレコーダー
Get-AppxPackage A278AB0D.MarchofEmpires | Remove-AppxPackage                 # マーチ オブ エンパイア
Get-AppxPackage Microsoft.WindowsMaps | Remove-AppxPackage                   # マップ
Get-AppxPackage *bing* | Remove-AppxPackage                                  # マネー、スポーツ、ニュース、天気
Get-AppxPackage microsoft.windowscommunicationsapps | Remove-AppxPackage     # メール、カレンダー
Get-AppxPackage Microsoft.Messaging | Remove-AppxPackage                     # メッセージング
Get-AppxPackage Microsoft.YourPhone | Remove-AppxPackage                     # スマホ同期／モバイル コンパニオン
Get-AppxPackage Microsoft.OneConnect | Remove-AppxPackage                    # モバイル通信プラン／有料Wi-Fi &amp; 携帯ネットワーク
</pre>
<h2>不要なサービス停止</h2>
<pre class="brush: bash; title: ; notranslate">
sc config BTAGService start= disabled
sc config bthserv start= disabled
sc config DiagTrack start= disabled
sc config Fax start= disabled
sc config wlidsvc start= disabled
sc config PNRPAutoReg start= disabled
sc config WPDBusEnum start= disabled
sc config SensorDataService start= disabled
sc config SensrSvc start= disabled
sc config SensorService start= disabled
sc config TapiSrv start= disabled
sc config XboxGipSvc start= disabled
sc config XblAuthManager start= disabled
sc config XblGameSave start= disabled
sc config XboxNetApiSvc start= disabled
sc config WerSvc start= disabled
sc config DusmSvc start= disabled
sc config RetailDemo start= disabled
sc config wuauserv start= disabled
</pre>
<h2>ときどきスタート画面におすすめを表示するを停止</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager&quot; /v &quot;SystemPaneSuggestionsEnabled&quot; /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>ストアアプリの自動ダウンロード/自動インストール(更新)を無効</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\WindowsStore&quot; /v &quot;AutoDownload&quot; /t REG_DWORD /d &quot;4&quot; /f
</pre>
<h2>リモートデスクトップ接続「許可」</h2>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server&quot; /v fDenyTSConnections /t REG_DWORD /d &quot;0&quot; /f
</pre>
<h2>WiFi無効</h2>
<pre class="brush: bash; title: ; notranslate">
netsh interface set interface &quot;Wi-Fi&quot; disable
</pre>
<h2>再起動</h2>
<pre class="brush: bash; title: ; notranslate">
shutdown -r
</pre>
<p>今後随時追加していきます。</p>
]]></content:encoded>
			</item>
		<item>
		<title>バッチの基本  ユーザー操作、レジストリ操作、タスクスケジュール操作、コンピューター情報操作</title>
		<link>https://web-creators-hub.com/windows/basic-bat3/</link>
		<pubDate>Wed, 06 Nov 2019 15:36:14 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=399</guid>
		<description><![CDATA[前回のつづき コンピューター情報操作 「wmic computersystem」コマンドはコンピューター名、グループ名の編集、ドメイン参加な...]]></description>
				<content:encoded><![CDATA[<p><img class="size-full wp-image-381 alignnone" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png" alt="" width="700" height="350" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png 700w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-300x150.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-320x160.png 320w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>前回のつづき<br />
<div class="linkcard"><table border="1" cellspacing="0" cellpadding="4"><tbody></tr><tr><td><br><a class="lkc-link no_icon" href="https://web-creators-hub.com/windows/basic-bat2/">バッチ基本 リダイレクト、パイプ、文字列の操作、ファイルの操作まとめ</a> - Web Creators Hub</td></tr></tbody></table></div></p>
<h2>コンピューター情報操作</h2>
<p>「wmic computersystem」コマンドはコンピューター名、グループ名の編集、ドメイン参加などコンピューターの情報操作でき操作できるコマンドです。</p>
<pre>・コンピューター名の変更
wmic computersystem where name="%computername%" call rename name="[新しいコンピュータ名]"

・グループ名の変更
wmic computersystem where name="%computername%" call joindomainorworkgroup name="[新しいグループ名]"

・ドメイン参加
wmic computersystem WHERE "name='%computername%'" CALL JoinDomainOrWorkgroup name="[ドメイン名]" username="[ユーザー名]" password="[パスワード]" FJoinOptions=3
</pre>
<h2>ユーザー操作</h2>
<p>「net user」コマンドはユーザー関連の操作行えるコマンドです。</p>
<pre>・adminユーザー有効化
net user administrator /active:yes

・ユーザーパスワード変更
net user [username] [password]
</pre>
<h2>セッション操作（パソコンやサーバに接続しているユーザー）</h2>
<pre>・セッション一覧表示
net session

・セッション切断
net session [切断したい\\コンピュータ名] /delete /y
</pre>
<h2>レジストリ操作</h2>
<p>レジストリはWindowsやアプリケーションの設定がまとめられているデータベースです。このコマンドを使ってPCのキッティングの自動化などでよく使います。</p>
<h3>レジストリ追加</h3>
<pre>reg add [キー名] /v [設定したい値の名前] /d &lt;値&gt; /t &lt;タイプ&gt; /f
</pre>
<pre>例 UACを無効
キー名:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender
設定したい値の名前:DisableAntiSpyware
値：1
タイプ：REG_DWORD
</pre>
<pre class="brush: bash; title: ; notranslate">
reg add &quot;HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender&quot; /v &quot;DisableAntiSpyware&quot; /d &quot;1&quot; /t REG_DWORD /f
</pre>
<pre>例：令和対応
キー名:"HKLM\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras"
設定したい値の名前:"2019 05 01"
値："令和_令_Reiwa_R"
タイプ：REG_SZ</pre>
<pre class="brush: bash; title: ; notranslate">
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras /v &quot;2019 05 01&quot; /t REG_SZ /d &quot;令和_令_Reiwa_R&quot;
</pre>
<h3>レジストリ参照</h3>
<pre>reg query [キー名] /v [設定したい値の名前]</pre>
<pre>キー名:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender
確認した値の名前:DisableAntiSpyware</pre>
<p>例 UACを無効</p>
<pre class="brush: bash; title: ; notranslate">
reg query &quot;HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender&quot; /v &quot;DisableAntiSpyware&quot;
</pre>
<p>例：令和対応</p>
<pre class="brush: bash; title: ; notranslate">
reg query &quot;HKLM\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras&quot; /v &quot;2019 05 01&quot;
</pre>
<h2>タスクスケジュール</h2>
<p>「schtasks」はタスクスケジュールを操作するコマンドです。サーバを整理するときにタスクスケジュールを一覧でまとめたときに使いました。</p>
<h3>タクス実行</h3>
<pre>schtasks /run /tn [タスク名]</pre>
<h3>タスク追加</h3>
<p>例1</p>
<pre>タスク名(/tn [タスク名])：admin
実行ユーザー(/RU [ユーザー名])：administrator
実行ユーザーパスワード(/RP [パスワード])：password
実行コマンド(/tr [コマンド]):C:\タスク実行\Command
スケジュール(/sc [頻度] /sd [開始日付] /st [開始時間] /ri [間隔] 1-599940 分)：一度 2100/01/01 00:00:00
上書き(/F)：あり
実行レベル(/rl [LIMITED/HIGHEST])：HIGHEST
遅延時間(/DELAY [時間]):なし</pre>
<pre class="brush: bash; title: ; notranslate">
schtasks /create /tn &quot;admin&quot; /RU administrator /RP password /tr C:\タスク実行\Command /sc once /sd 2100/01/01 /st 00:00:00  /rl highest /F
</pre>
<p>例2</p>
<pre>タスク名(/tn [タスク名])：shutdow
実行コマンド(/tr [コマンド]):C:\insouApp\POS\Shutdown.bat
スケジュール(/sc [頻度] /sd [開始日付] /st [開始時間] /ri [間隔] 1-599940 分)：毎日 03:00:00
上書き(/F)：なし</pre>
<pre class="brush: bash; title: ; notranslate">
schtasks /create /tn &quot;shutdown&quot; /tr C:\insouApp\POS\Shutdown.bat /sc daily /st 03:00:00
</pre>
<h3>スケジュール無効化</h3>
<pre>schtasks /Change /DISABLE /TN [タスク名]</pre>
<h3>スケジュール削除</h3>
<pre>SCHTASKS /Delete /TN [タスク名]</pre>
<h3>タスク追加</h3>
<pre>SCHTASKS /Query /TN [タスク名]</pre>
<h2>ネットワークインターフェース設定</h2>
<p>「netsh interface」はネットワークインターフェースの設定するコマンドです。これもPCのキッティングの自動化などでよく使います。</p>
<h3>IPV4インターフェース一覧</h3>
<pre>netsh interface ipv4 show interfaces</pre>
<h3>IPV4インターフェース詳細</h3>
<pre>netsh interface ipv4 show interfaces [インデックス番号]</pre>
<h3>IPアドレス一覧表示</h3>
<pre>netsh interface ipv4 show addresses</pre>
<h3>ネットワーク設定</h3>
<pre>netsh interface ip set address [インターフェース名] static [IPアドレス] [サブネットマスク] [デフォルトゲートウェイ]</pre>
<p>例：固定IP</p>
<pre class="brush: bash; title: ; notranslate">
netsh interface ip set address &quot;ローカル エリア接続&quot; static 192.168.3.5 255.255.255.0 192.168.3.1
</pre>
<p>例：dhcp</p>
<pre class="brush: bash; title: ; notranslate">
netsh interface ip set address &quot;ローカル エリア接続&quot; dhcp
netsh interface ip set dns &quot;ローカル エリア接続&quot; dhcp
</pre>
<h3>インターフェース無効</h3>
<pre class="brush: bash; title: ; notranslate">
netsh interface set interface &quot;[インターフェース名]&quot; disable
</pre>
<h2>ワイヤレスLAN設定</h2>
<p>「netsh wlan」はWiFiの設定ができるコマンドです。</p>
<h3>接続設定</h3>
<pre>netsh wlan connect name="[SSID]"</pre>
<h3>接続設定(プロファイルの追加)</h3>
<pre>netsh wlan set profileparameter name="[SSID]" keymaterial=[セキュリティーキー] connectionmode=[auto/manual]</pre>
<h3>プロファイルをエクスポート</h3>
<pre>netsh wlan export profile name="[SSID]" folder=[出力先フォルダ]</pre>
<h3>プロファイルをインポート</h3>
<pre>netsh wlan add profile filename="[出力したxmlファイル]"</pre>
]]></content:encoded>
			</item>
		<item>
		<title>バッチ基本 リダイレクト、パイプ、文字列の操作、ファイルの操作まとめ</title>
		<link>https://web-creators-hub.com/windows/basic-bat2/</link>
		<pubDate>Tue, 05 Nov 2019 16:02:47 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=394</guid>
		<description><![CDATA[前回のつづき リダイレクト、パイプ 標準出力と標準エラー出力 通常コマンドを入力し実行すると出力結果はモニタで確認できるようにコマンドプロン...]]></description>
				<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-381" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png" alt="" width="700" height="350" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png 700w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-300x150.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-320x160.png 320w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>前回のつづき<br />
<div class="linkcard"><table border="1" cellspacing="0" cellpadding="4"><tbody></tr><tr><td><br><a class="lkc-link no_icon" href="https://web-creators-hub.com/windows/basic-bat/">初心者でもわかるwindowsバッチファイル作成の基本</a> - Web Creators Hub</td></tr></tbody></table></div></p>
<h2>リダイレクト、パイプ</h2>
<h3>標準出力と標準エラー出力</h3>
<p>通常コマンドを入力し実行すると出力結果はモニタで確認できるようにコマンドプロンプトの画面上に出力されます。この出力結果のことは「標準出力」といいます。コマンドの文法が間違っている場合などエラーを伝える文章が表示された場合、通常の出力結果と違うため標準出力と区別します。そしてこの出力結果のことを「標準エラー出力」といいます。</p>
<h3>実行結果の出力先</h3>
<p>実行結果の出力先は通常ディスプレイになります。実はこの出力先はユーザーで自由に決めることができます。出力先をファイルにした場合はリダイレクトといい、出力先をほかのコマンドにする場合はパイプといいます。</p>
<h3>ログ</h3>
<p>出力結果をログとして残しておきたい場合はファイルにリダイレクトさせます。標準出力と標準エラー出力を別のファイルに分けることもできます。</p>
<h3>リダイレクト</h3>
<p>コマンドとファイルの間に大なり(>)を入れることでリダイレクトさせることができます。</p>
<pre>[コマンド] > [ファイル]

通常の大なり(>)の場合は出力結果は上書きされますが、大なり大なり(>>)の場合は上書きされることなく追記することができます。
[コマンド] >> [ファイル]
</pre>
<h3>パイプ</h3>
<p>コマンドとコマンドの間に(|)を入れることでパイプすることができます。</p>
<pre>[コマンド] | [コマンド]</pre>
<p>例：リダイレクト、パイプ</p>
<pre class="brush: bash; title: ; notranslate">
@echo off

rem echoの出力内容をtest.txtにリダイレクト
echo Car &gt; test.txt
echo Apple &gt;&gt; test.txt
echo Desk &gt;&gt; test.txt 
echo Bag &gt;&gt; test.txt

rem ファイルの表示内容をsortコマンドにパイプしさらに出力結果をresult.txtにリダイレクト
type test.txt | sort &gt; result.txt

pause
</pre>
<p>結果</p>
<pre>test.txt
Car
Apple
Desk
Bag

result.txt
Apple 
Bag
Car 
Desk</pre>
<h3>コマンドの結果を出力させない</h3>
<pre>コマンド  > nul</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
net user | findstr /I guest &gt; nul
pause
</pre>
<h2>文字列の操作</h2>
<p>プログラムでは特定の文字を切り出したり、文字を置き換えたりと文字列の操作を頻繁に行います。batでもこれらの操作行うためいろいろなコマンドが用意されています。</p>
<pre>・文字列切り出し・置き換え
%[変数名]:~[開始位置],[文字数]%

%[変数名]:~m%  m文字目から、最後まで
%[変数名]:~m,n%    m文字目から、n文字分
%[変数名]:~m,-n%   m文字目から、最後のn文字分を除いたもの
%[変数名]:~-m% 後ろからm文字目から、最後まで
%[変数名]:~-m,n%   後ろからm文字目から、n文字分
%[変数名]:~-m,-n%  後ろからm文字目から、最後のn文字分を除いたもの
%[変数名]:a=b% 文字aを文字bに置換
</pre>
<h3>日付/時刻</h3>
<p>日付と時刻は形式がいろいろあり表記方法に悩むことがあります。<br />
これを置き換えと切り出しを使ってどんな表記形式でも対応できるようにします。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set date_tmp=%date:/=%
set time_tmp=%time: =0%
set yyyy=%date_tmp:~0,4%
set yy=%date_tmp:~2,2%
set mm=%date_tmp:~4,2%
set dd=%date_tmp:~6,2%
set hh=%time_tmp:~0,2%
set mi=%time_tmp:~3,2%
set ss=%time_tmp:~6,2%
echo %yyyy%-%mm%-%dd% %hh%:%mi%:%ss%
echo %yyyy%/%mm%/%dd% %hh%:%mi%:%ss%
pause
</pre>
<h3>コマンドの出力結果から指定文字列を検索</h3>
<pre>findstr [オプション] "[指定文字列]" [検索対象ファイル]

よく使うオプション
/S: サブディレクトリを全部、再帰する。（シンボリックリンクも辿るかは未検証）
/I: アルファベットの大小文字を区別しない。（デフォだと区別する）
/X: 完全一致する行だけ。
/N: 行番号も表示する。（デフォだとファイル名だけ）
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
net user | findstr /I guest
pause
</pre>
<h2>ファイル操作</h2>
<h3>コピー</h3>
<h4>copy</h4>
<pre>copy [source_file] [destination_file]
低機能で単一のファイルのコピーに使う</pre>
<h4>xcopy</h4>
<pre>・xcopy [source_file] [destination_file]
copyより高機能。ファイルをディレクトリ構造ごとコピーできる

・よく使うオプション
/D:MM/DD/YYYY   指定した日付以降に更新されたファイルのみコピーする
/D  コピー先に同名のファイルが存在する場合に更新日が新しいファイルのみコピーする
/P  コピー前に確認メッセージを表示する
/S  ファイルが存在する場合のみコピーするサブディレクトリまで含めてディレクトリごとコピーする
/E  ファイルが存在しなくてもコピーするサブディレクトリまで含めてディレクトリごとコピーする
/EXCLUDE:file name  指定したファイルをコピー対象から外す（複数ファイル指定時は"+"でくくる）
/W  キー入力を待ってコピーを開始する
/C  コピー時のエラーを無視する
/I  コピー先のディレクトリが存在しない場合は新規にディレクトリを作成する
/Q  コピーしたファイル名を表示しない
/H  隠しファイルやシステムファイルも全てコピーする
/T  ファイルが存在するディレクトリのディレクトリのみコピーする
/O  ファイルの所有権やアクセス権限もそのままコピーする
/Y  同名のファイルが存在する場合、上書きの確認を行わない
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
set source=%USERPROFILE%\Desktop\source
set destination=%USERPROFILE%\Desktop\destination

xcopy /S /C /I /Q /Y %source%\* %destination%

pause
</pre>
<h4>robocopy</h4>
<pre>・robocopy [source_file] [destination_file]
主にバックアップに使う。フォルダの同期が可能。コピー元、コピー先の差分を確認してコピーすることが可能。

・よく使うオプション
/B  バックアップ専用の権限を持ったアカウント（バックアップモード）でファイルをコピーする
/MIR    ディレクトリツリーをミラー化する　増減両方の差分を反映する
/XO     古いファイルを除外する
/E      空のディレクトリを含むサブディレクトリをコピーする
/COPY:Flag  ファイルにコピーする情報を指定する(既定値は/COPY:DAT)
┣/COPY:DAT　既定値
┗/COPY:DATS　フォルダのアクセス権もコピー
/R:1    コピー失敗時に何回再試行 (Retry) するか。1 の場合は、失敗した後にもう一度だけ再試行する。
/W:1    コピー失敗と判断するまでの待ち時間 (Wait time)。
/LOG:FileName   ログファイルに状態を出力する（既存ファイルを上書く）
/LOG+:FileName  ログファイルに状態を出力する（既存ファイルに追記）
/NP     進捗非表示
/NFL    コピー成功時にはファイル名のログ出力しない
/NDL    コピー成功時にはフォルダ名のログを出力しない
/L      テストモード（ドライラン）。
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
set source=%~dp0\source
set destination=%~dp0\destination

robocopy %source% %destination% /B /E /R:1 /W:1 /LOG:%destination%\log.txt /NP

pause
</pre>
<h3>ファイルの移動や名前の変更</h3>
<pre>move [source_file] [destination_file]

・オプション
/Y  上書き時に確認しない
/-Y 上書き時に確認する</pre>
<h3>ディレクトリを作成する</h3>
<pre>mkdir [new directory name]</pre>
<h3>ディレクトリを削除する</h3>
<pre>rd [directory name]

・オプション
/s  ファイルやサブディレクトリも含めて削除する
/q  /sで削除する際に確認メッセージを表示しない</pre>
<h3>ファイルを削除</h3>
<pre>del [directory name]

・オプション
/P  ファイルの削除前に確認メッセージを表示する
/F  読み取り専用ファイルを削除する
/S  指定したファイルを全てのサブディレクトリから削除し、削除したファイル名を表示する
/Q  削除前に確認メッセージを表示しない
</pre>
<h3>管理者権限を持っているかどうか</h3>
<p>openfilesは使用中の共有ファイルを表示するコマンドだが、管理者権限の持ったユーザーのみ使用可能。<br />
これを使って管理者権限をもっているか判断する。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
openfiles &gt; NUL 2&gt;&amp;amp;1 
if NOT &quot;%ERRORLEVEL%&quot; == &quot;0&quot; goto user
echo 【○】管理者権限です
goto END
:user
echo 【×】管理者権限ではありません。
:END
pause
</pre>
<p>次回はよく使うコマンドまとめです。<br />
ユーザー操作、レジストリ操作、タスクスケジュールなど<br />
<div class="linkcard"><table border="1" cellspacing="0" cellpadding="4"><tbody></tr><tr><td><br><a class="lkc-link no_icon" href="https://web-creators-hub.com/windows/basic-bat3/">バッチの基本 ユーザー操作、レジストリ操作、タスクスケジュール操作、コンピュー...</a> - Web Creators Hub</td></tr></tbody></table></div></p>
]]></content:encoded>
			</item>
		<item>
		<title>初心者でもわかるwindowsバッチファイル作成の基本</title>
		<link>https://web-creators-hub.com/windows/basic-bat/</link>
		<pubDate>Mon, 04 Nov 2019 16:20:38 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=367</guid>
		<description><![CDATA[バッチファイルとは 複数のコマンド処理を一つのファイルにまとめ、記述したコマンドを上から順に実行させるファイルのこと。ファイルの拡張子は.b...]]></description>
				<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-381" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png" alt="" width="700" height="350" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat.png 700w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-300x150.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat-320x160.png 320w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<h2>バッチファイルとは</h2>
<p>複数のコマンド処理を一つのファイルにまとめ、記述したコマンドを上から順に実行させるファイルのこと。ファイルの拡張子は.bat。</p>
<h2>バッチファイルの作成方法</h2>
<p><img class="alignnone size-full wp-image-383" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat2.png" alt="" width="369" height="160" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat2.png 369w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat2-300x130.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat2-320x139.png 320w" sizes="(max-width: 369px) 100vw, 369px" /><br />
テキストファイルを作成し拡張子をbatに変更します。エディタでそのファイルを開き以下のコードを入力してください。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
echo HELLO WORLD
pause
</pre>
<p>作成したバッチファイルをダブルクリックで実行します。<br />
コマンドプロンプトの画面にHELLO WORLDと表示されれば成功です。</p>
<h3>プログラム解説</h3>
<h4>@echo off</h4>
<p>一番初めに記載します。echoをオフにすると不要な実行コマンドが表示されなくなり画面が見やすくなります。</p>
<h4>echo</h4>
<p>設定した任意の文字列を表示するコマンドです。</p>
<pre>echo [表示したい文字列]</pre>
<h4>pause</h4>
<p>実行を一時停止されるコマンドです。</p>
<h4>rem</h4>
<p>バッチファイル内にコメントを記述することができるコマンドです。<br />
コメントの部分にそのほかのコマンドを記述しても実行されることはありません</p>
<pre>rem [コメント]</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
rem echoコマンド
echo HELLO WORLD
rem echo 実行されない
pause
</pre>
<h2>変数</h2>
<p><img class="alignnone size-full wp-image-389" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat3-1.png" alt="" width="458" height="333" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat3-1.png 458w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat3-1-300x218.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/basic-bat3-1-320x233.png 320w" sizes="(max-width: 458px) 100vw, 458px" /><br />
変数はメモリに文字列などの値を保存するために使います。使い方は変数の名前を決めて、そこに保存する値を記述します。値を取り出したいときは%変数名%で取り出せます。変数はプログラムミングになくてはならないものです。使いこなせるようにしましょう。</p>
<p>batではsetコマンドを使って変数を設定します。</p>
<pre>set 変数名=値</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
rem 変数名aに「HELLO WORLD」(値)を保存
set a=HELLO WORLD

rem 変数から値を取り出し
echo %a%

pause
</pre>
<h3>setのオプション</h3>
<p>オプションとは通常のコマンドの処理になにか機能追加するためのものです。</p>
<h4>/a オプション</h4>
<p>文字列ではなく数字の加算時に使われます。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set a=1
set /a a+=1
echo %a%
pause
</pre>
<pre>結果
2
</pre>
<h4>/p オプション</h4>
<p>メッセージ付きでユーザーから標準入力を受け付けます。任意の入力を受け付ける場合時によく使用します。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
:NAME_SET
cls
ECHO +-------------------------------------------------------+
ECHO  名前を入力してください。
ECHO +-------------------------------------------------------+
SET /P NAME=&quot;&gt;&gt;&quot;

if &quot;%NAME%&quot; == &quot;&quot; (
  echo 名前を入力してください。
  pause
  goto :NAME_SET
) else (
  echo あなたのお名前は %NAME% です。
)
pause
</pre>
<h3>環境変数</h3>
<p>初めからWindowsで設定されている変数のことです。例えばパソコンやユーザーごとで変わってしまうフォルダを参照する場合などで使われます。</p>
<h4>よく使う環境変数</h4>
<pre>・カレントディレクトリ
%~dp0
・ユーザープロファイル
%USERPROFILE%
・コンピュータ名
%computername%
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
echo カレントディレクトリ：%~dp0
echo ユーザープロファイル：%USERPROFILE%
pause
</pre>
<h2>制御</h2>
<p>バッチは上から順にコマンドを実行していくプログラムです。しかしこれだけでは簡単なものしか作成することができません。これをさらに複雑なものを作成するためにはプログラムにいろいろな流れを与え制御する必要があります。これを実現する方法にはif文を使った条件分岐とforを使った反復、サブルーチン、gotoを使った位置移動などがあります。</p>
<h3>if文を使った条件分岐</h3>
<p><img class="alignnone size-full wp-image-388" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/if.png" alt="" width="342" height="245" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/if.png 342w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/if-300x215.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/if-320x229.png 320w" sizes="(max-width: 342px) 100vw, 342px" /><br />
条件を設定し条件に合格した場合はこの制御、不合格の場合はこの制御、といった場合に使用します。</p>
<h4>if使い方</h4>
<pre>if 条件文 (
    合格した場合の制御内容
)
</pre>
<h4>elseif使い方</h4>
<pre>if 条件文 (
    合格した場合の制御内容
) else (
    不合格した場合の制御内容
)
</pre>
<h4>一行で書く場合</h4>
<pre>if 条件 合格した場合の制御内容 else 不合格した場合の制御内容
</pre>
<h3>条件文の書き方</h3>
<h4>AとBが正しい場合</h4>
<pre>if A == B (

)
</pre>
<h4>AとBが正しく無い場合</h4>
<pre>if not A == B (

)
</pre>
<h3>数値比較</h3>
<h4>[数値1]と[数値2]が等しい</h4>
<pre>if [数値1] equ [数値2] (

)
</pre>
<h4>[数値1]と[数値2]が等しくない</h4>
<pre>if [数値1] neq [数値2] (

)
</pre>
<h4>[数値1]が[数値2]より小さい</h4>
<pre>if [数値1] lss [数値2] (

)
</pre>
<h4>[数値1]が[数値2]以下</h4>
<pre>if [数値1] leq [数値2] (

)
</pre>
<h4>[数値1]が[数値2]より大きい</h4>
<pre>if [数値1] gtr [数値2] (

)
</pre>
<h4>[数値1]が[数値2]以上</h4>
<pre>if [数値1] geq [数値2] (

)
</pre>
<h3>ファイルの有無</h3>
<pre>IF EXIST ファイル名 (

)
</pre>
<h3>空判定</h3>
<p>入力されたかどうか判定するときによく使います。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set no=
if &quot;%no%&quot; == &quot;&quot; (
	echo 空
) else (
	echo 空ではない
)
pause
</pre>
<pre>結果
空</pre>
<p>※変数にダブルクォーテーションを囲わないと変数の未定義エラーになる。</p>
<h3>文字列比較</h3>
<p>入力した文字をチェックするときなどに使います。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set str=テスト
if &quot;%str%&quot; == &quot;テスト&quot; (
	echo 【○】%str%
) else (
	echo 【×】%str%
)
pause
</pre>
<pre>結果
【○】テスト</pre>
<h3>否定</h3>
<pre class="brush: bash; title: ; notranslate">
@echo off
set str=テスト
if not &quot;%str%&quot; == &quot;テスト&quot; (
	echo 【○】%str%
) else (
	echo 【×】%str%
)
pause
</pre>
<pre>結果
【×】テスト</pre>
<h3>ファイルの有無</h3>
<p>ファイルが存在するかどうかのチェックで使います。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set FILE=test.bat
IF EXIST &quot;%FILE%&quot; (
	echo %FILE%は存在する。
) else (
	echo %FILE%は存在しない。
)
pause
</pre>
<pre>結果
test.batは存在する。</pre>
<h3>数値比較</h3>
<pre class="brush: bash; title: ; notranslate">
@echo off

set a=1
set b=2
set c=1
set d=3

if %a% equ %c% echo %a%と%c%は等しい。
if %a% neq %b% echo %a%と%b%は等しくない。
if %a% lss %b% echo %a%は%b%より小さい。
if %a% leq %b% echo %a%は%b%以下。
if %d% gtr %b% echo %d%は%b%より大きい。
if %d% geq %b% echo %d%は%b%以上。
pause
</pre>
<p>結果</p>
<pre>1と1は等しい。
1と2は等しくない。
1は2より小さい。
1は2以下。
3は2より大きい。
3は2以上。
</pre>
<h2>反復・繰り返し制御</h2>
<p><img class="alignnone size-full wp-image-386" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/for.png" alt="" width="307" height="261" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/for.png 307w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/for-300x255.png 300w" sizes="(max-width: 307px) 100vw, 307px" /><br />
プログラムでは反復制御をよく使われます。同じことを繰り返すことは人間には難しいですが、機械は簡単にこなします。起動している間ずっと同じことをやり続けさせることもできるため自動化には欠かすことが出来ない制御です。batではファイルの中身を一行つづ取り出すときやファイルやフォルダを検索するときにこの処理をよく使います。</p>
<h3>forを繰り返し制御</h3>
<pre>・基本型
下記が基本型になります。順を追って説明します。

FOR オプション %%アルファベット1文字 in (ループ処理の対象) do (

)

・オプション
オプションとは通常のコマンドの処理になにか機能追加するためのものです。これによりより細かいコマンドの処理を要求することができます。forにもありオプションを使うことでいろいろな制御が可能です。

(オプション無し) ディレクトリ内を対象にとる
/d ディレクトリ（フォルダ）名を対象にとる
/r ディレクトリ名及びそのサブディレクトリ内（そのフォルダの中のファイル名やフォルダ名）を対象にとる
/l 値を指定して代入する
/f テキストファイル内の文章に対してトークンを取り出して代入する

・%%アルファベット１文字
オプションが決定した処理の対象を変数に代入します。forのみ使用できる特別な変数になります。
※大文字と小文字は別物として判断
※変数はfor文の中でだけ有効

・ループ処理の対象
何回繰り返すかの場合は数字、フォルダやファイルの検索結果を対象にする場合はファイル名、テキスト内容やコマンドの出力結果を一行づつ取り出す場合はファイル名・コマンドなどがここに入ります。よってオプションによって内容が変わります。
</pre>
<h3>指定した値まで繰り返す</h3>
<p>ほかのプログラムでも良く使う処理です。オプション/lを使用します。</p>
<pre>for /l %%アルファベット1文字 in (開始値、増加値、終了値) do (
    %%アルファベット1文字には繰り返され増加されている値が入る
)
</pre>
<p>0から10まで繰り返し</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
for /l %%i in (0,1,10) do echo %%i
pause
</pre>
<h3>ファイル検索</h3>
<p>ここからbat特有の処理になります。フォルダ内からファイルやフォルダ名を検索するときにfor文を使います。フォルダ内のファイル名を一つ一つ調べていくため繰り返し処理が利用されています。</p>
<p>以下はデスクトップ内にある拡張子.batのファイルをすべてlog.txtに出力するプログラムです。ファイル名を対象にしますのでオプション/rを使用します。またフォルダ名のみ対象の場合はオプション/dを使用します。</p>
<pre>for /r %%アルファベット1文字 in (検索対象) do (
    %%アルファベット1文字には検索対象のファイル名が入る
)
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
cd %USERPROFILE%\Desktop
for /r %%A in (*.bat) do (
	if exist &quot;%%A&quot; (
		echo %%A &gt;&gt; log.txt
	)
)
pause
</pre>
<h3>テキスト内の文章やコマンドの出力結果</h3>
<p>コマンドの出力結果もfor文を使って一行づつ取り出しすことができます。コマンドを対象にしますのでオプション/Fを使用します。</p>
<pre>FOR /F "トークンオプション" %%アルファベット1文字 in (ファイル名/'コマンド') do (
    テキストファイル内の文章に対してトークンを取り出して代入
)

・トークン（列番号）
for文で一行づつ文章を取り出します。文章には一行内にいろいろな意味を持たせるため列の概念を持っています。そのためどの列の値を取り出したいか指定するためトークンというオプションが利用できます。

name age address tel
tanaka 25 osaka 00-0000-0000
nakamura 26 nara 00-0000-0000


・トークンオプション一覧
tokens= 何番目のトークンを指定するか？
delims= トークンの区切り文字を指定(指定が無い場合はスペース)
eol= この文字から始まる行を無視
skip= 先頭から指定された行数、スキップする。データにタイトルなどある場合に使う。
</pre>
<h4>テキスト内の文章から特定の列を取り出す。</h4>
<pre class="brush: bash; title: ; notranslate">
@echo off
rem 検索用ファイルを作成
echo name age address tel &gt; test.txt
echo tanaka 25 osaka 11-0000-0000 &gt;&gt; test.txt
echo nakamura 26 nara 22-0000-0000 &gt;&gt; test.txt
echo ito 27 kyoto 33-0000-0000 &gt;&gt; test.txt

FOR /F &quot;tokens=2 skip=1&quot; %%a in (test.txt) do (
	echo %%a
)
pause
</pre>
<h4>コマンドの出力結果から特定の列を取り出す。</h4>
<pre class="brush: bash; title: ; notranslate">
@echo off
FOR /F &quot;tokens=2 skip=2 eol=-&quot; %%a in ('net user') do (
	echo %%b
)
pause
</pre>
<h4>2行目の値を取得する場合</h4>
<p>2つ以上のトークンを指定したとき、2つ目以降のトークンは定義したアルファベットの次の文字に代入される。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
FOR /F &quot;usebackq tokens=1,2 skip=2 eol=-&quot; %%a in ('net user') do (
	if not &quot;%%b&quot; == &quot;&quot; echo %%b
)
pause
</pre>
<pre>%%aが定義されているので2列目の値は%%bに代入される。

%%a 1列目
%%b 2列目
%%c 3列目
</pre>
<h4>その他のトークンの指定例</h4>
<pre>・全ての列
tokens=*

・2列目とそれ以降すべて
tokens=2,*
</pre>
<h2>setlocal enabledelayedexpansion</h2>
<p>変数を定義した後にif,for文などのカッコ内に定義した変数の値を変更しても初めに定義した値から書き換わらない現象に対応するために遅延環境変数を使う。遅延環境変数を使うためにこの一文を追加する必要がある。そして変数は%で囲うのではなく！で囲う。</p>
<h3>遅延環境変数を使わない場合</h3>
<pre class="brush: bash; title: ; notranslate">
@echo off
set a=1
echo %a%

if 1 == 1 (
  set /a a+=1
  echo %a%
)
pause
</pre>
<pre>結果
1
1
</pre>
<h3>遅延環境変数使った場合</h3>
<pre class="brush: bash; title: ; notranslate">
@echo off
setlocal enabledelayedexpansion

set a=1
echo %a%
if 1 == 1 (
  set /a a+=1
  echo !a!
)
pause
</pre>
<pre>結果
1
2
</pre>
<h2>位置移動</h2>
<p><img class="alignnone size-full wp-image-387" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/goto.png" alt="" width="416" height="192" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/goto.png 416w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/goto-300x138.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/11/goto-320x148.png 320w" sizes="(max-width: 416px) 100vw, 416px" /></p>
<h3>goto</h3>
<p>指定したラベルの位置に処理を移動させます。</p>
<pre>・基本型
GOTO ラベル名

:ラベル名
</pre>
<pre class="brush: bash; title: ; notranslate">
@echo off
set a=0

:start
echo 処理開始 
goto :work

:work
echo 処理中
set /a a+=1
goto :end

:end
echo %a%:処理終了
if %a% == 10 (
    goto :exit
)

goto :start

:exit
echo 処理数が10に到達したので処理を終了

pause
</pre>
<h3>サブルーチン</h3>
<p>サブルーチンとは中核の処理とは別にほかの処理から呼び出されて処理を行うプログラムのことをいいます。batではcallがそれにあたります。gotoのようにラベルを設定しcallでラベルに移動します。gotoでは移動後もとの位置には戻りませんが、callは元の位置に戻ります。サブルーチンは引数を持っていて呼び出しもとの処理から値を受け取ることができます。受け取った値を処理して元の処理に渡すこともできます。ほかのプログラムの関数のように使用することができます。</p>
<pre class="brush: bash; title: ; notranslate">
@echo off
set /P a=&quot;数字を入力してください&gt;&gt;&quot;
call :sub %a%
echo %a%
pause
rem サブルーチン
:sub
rem 受け取った値に100足す
set /a a=%1+100

rem 処理した値を返す
exit /b %a%
</pre>
<pre>・call
batの実行、サブルーチンの実行

・exitとexit /b
exit
処理を止めて終了させる

・exit /b 戻り値
サブルーチンに引数を渡す
</pre>
<p>バッチの基本制御はここまで。<br />
次回はリダイレクト、パイプ、文字列の操作、ファイルの操作、よく使うコマンドなどをまとめていきます。</p>
<div class="linkcard"><table border="1" cellspacing="0" cellpadding="4"><tbody></tr><tr><td><br><a class="lkc-link no_icon" href="https://web-creators-hub.com/windows/basic-bat2/">バッチ基本 リダイレクト、パイプ、文字列の操作、ファイルの操作まとめ</a> - Web Creators Hub</td></tr></tbody></table></div>
]]></content:encoded>
			</item>
		<item>
		<title>WindowsでSCPを使う二つの方法</title>
		<link>https://web-creators-hub.com/windows/scp/</link>
		<pubDate>Mon, 19 Aug 2019 15:30:13 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=326</guid>
		<description><![CDATA[SCPコマンドとは SCPコマンドはリモートのマシンにデータをコピーするコマンドです。コピーコマンドのcpにsがついています。 sはSSHの...]]></description>
				<content:encoded><![CDATA[<h2>SCPコマンドとは</h2>
<p>SCPコマンドはリモートのマシンにデータをコピーするコマンドです。コピーコマンドのcpにsがついています。<br />
sはSSHのsで内部的にSSHを使用しているため盗聴されずに安全にデータをコピーすることができます。<br />
しかしWindwosでは標準で実装されておらず使用するためにはツールをインストールする必要があります。<br />
そこで今回比較的に容易に使用できるツールを2つ紹介します。</p>
<h2>Git BushでSCPコマンドを使う</h2>
<p>これをインストールするとWindowsでLinuxのコマンド(Bush)が利用できます。このツールを使いSCPコマンドを使用します。</p>
<p>ツールをダウンロードします。<br />
<a href="https://gitforwindows.org/">https://gitforwindows.org/</a><br />
ダウンロードしたファイルを実行します。</p>
<p>基本的にインストール画面ではすべて「next」でOKです。</p>
<p><img class="alignnone size-full wp-image-317" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-318" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush2.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush2.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush2-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush2-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush2-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-319" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush3.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush3.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush3-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush3-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush3-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-320" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush4.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush4.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush4-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush4-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush4-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-321" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush5.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush5.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush5-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush5-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush5-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-322" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush6.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush6.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush6-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush6-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush6-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-311" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush8.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush8.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush8-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush8-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush8-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-312" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush9.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush9.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush9-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush9-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush9-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-313" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush10.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush10.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush10-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush10-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush10-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-314" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush11.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush11.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush11-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush11-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush11-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-315" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush12.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush12.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush12-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush12-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbush12-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-316" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/git13bush.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/git13bush.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/git13bush-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/git13bush-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/git13bush-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p>これでインストール完了です。<br />
アプリケーションから「Git Bush」を起動します。コマンドプロンプトのような画面からSCPコマンドを入力し使用します。</p>
<p><img class="alignnone size-full wp-image-340" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbash-sc.png" alt="" width="581" height="370" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbash-sc.png 581w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbash-sc-300x191.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/gitbash-sc-320x204.png 320w" sizes="(max-width: 581px) 100vw, 581px" /></p>
<h2>TeraTermを使用してSCPを使う</h2>
<p>SSHクライアントアプリケーションのTeraTermでもSCPを使用することができます。</p>
<p>ではTeraTermをダウンロードします。</p>
<p><a href="https://forest.watch.impress.co.jp/library/software/utf8teraterm/">https://forest.watch.impress.co.jp/library/software/utf8teraterm/</a></p>
<p>&nbsp;</p>
<p><img class="alignnone size-full wp-image-329" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t1.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t1.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t1-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t1-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t1-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-330" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t2.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t2.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t2-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t2-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t2-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-331" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t3.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t3.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t3-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t3-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t3-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-332" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t4.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t4.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t4-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t4-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t4-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-333" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t5.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t5.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t5-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t5-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t5-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-334" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t6.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t6.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t6-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t6-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t6-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-335" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t7.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t7.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t7-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t7-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t7-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-336" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t8.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t8.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t8-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t8-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t8-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p><img class="alignnone size-full wp-image-337" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t9.png" alt="" width="819" height="460" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t9.png 819w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t9-300x168.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t9-768x431.png 768w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/t9-320x180.png 320w" sizes="(max-width: 819px) 100vw, 819px" /></p>
<p>これでインストール完了です。</p>
<p>TeraTermを起動して「ファイル→SSH SCP」をクリックします。</p>
<p><img class="alignnone size-full wp-image-338" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera1.png" alt="" width="659" height="486" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera1.png 659w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera1-300x221.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera1-320x236.png 320w" sizes="(max-width: 659px) 100vw, 659px" /></p>
<p>表示された画面からリモートマシンにデータコピーしたり、PCにデータをダウンロードすることができます。</p>
<p><img class="alignnone size-full wp-image-339" src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera2.png" alt="" width="421" height="230" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera2.png 421w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera2-300x164.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/08/tera2-320x175.png 320w" sizes="(max-width: 421px) 100vw, 421px" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			</item>
		<item>
		<title>バッチ(bat)で任意の文字入力待ち→入力→確認→完了 を作成</title>
		<link>https://web-creators-hub.com/windows/bat-set-s/</link>
		<pubDate>Tue, 23 Apr 2019 15:36:22 +0000</pubDate>
		<dc:creator><![CDATA[taizo]]></dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">https://web-creators-hub.com/?p=250</guid>
		<description><![CDATA[ウェブの入力フォームのようにWindowsのバッチで再現します。再現するためには入力を受け付ける「SET /P」と画面遷移のように確認→完了...]]></description>
				<content:encoded><![CDATA[<p><img src="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/04/bat_1.png" alt="" width="700" height="350" class="alignnone size-full wp-image-254" srcset="https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/04/bat_1.png 700w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/04/bat_1-300x150.png 300w, https://web-creators-hub.com/__wordpress/wp-content/uploads/2019/04/bat_1-320x160.png 320w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>ウェブの入力フォームのようにWindowsのバッチで再現します。再現するためには入力を受け付ける「SET /P」と画面遷移のように確認→完了を再現するために「GOTO:」を使用します。</p>
<h2>SET /P 変数=&#8221;メッセージ&#8221;</h2>
<p>任意の入力を受け付ける場合は「SET /P」を使用します。<br />
&nbsp;<br />
<strong>使用例</strong></p>
<pre class="brush: bash; title: ; notranslate">
REM 初期化
SET INPUTSTR=
SET /P INPUTSTR=&quot;入力してください。&quot;
</pre>
<h2>GOTO:</h2>
<p>確認や完了のメッセージの処理へ移動させるために使います。<br />
&nbsp;<br />
<strong>使用例 </strong><br />
&nbsp;</p>
<pre class="brush: bash; title: ; notranslate">
:INPUT_CHECK
SET INPUTSTR=
SET /P INPUTSTR=&quot;入力してください。
IF &quot;%INPUTSTR%&quot;==&quot;&quot; GOTO :INPUT_CHECK
ECHO 完了
</pre>
<p>&nbsp;</p>
<h2>文字入力→確認→完了</h2>
<p>「SET /P」「GOTO」を使って任意の文字入力→確認→完了 を完成させます。 以下がサンプルコードになります。<br />
&nbsp;</p>
<pre class="brush: bash; title: ; notranslate">
@ECHO OFF

:INPUT_START
ECHO +-------------------------------------------------------+
ECHO  文字を入力してください。
ECHO +-------------------------------------------------------+
SET INPUT_STR=
SET /P INPUT_STR=

IF &quot;%INPUT_STR%&quot;==&quot;&quot; GOTO :INPUT_START

:INPUT_CONF
ECHO +-------------------------------------------------------+
ECHO  入力した文字は[%INPUT_STR%]でよろしいですか？
ECHO （Y / N）
ECHO +-------------------------------------------------------+
SET CONF_SELECT=
SET /P CONF_SELECT=

IF &quot;%CONF_SELECT%&quot;== SET CONF_SELECT=Y
IF /I NOT &quot;%CONF_SELECT%&quot;==&quot;Y&quot;  GOTO :INPUT_START

:INPUT_END
ECHO +-------------------------------------------------------+
ECHO  完了しました。
ECHO +-------------------------------------------------------+

PAUSE
EXIT
</pre>
<p>&nbsp;<br />
起動すると<br />
<img src="/image/bat_1.gif" alt=""></p>
]]></content:encoded>
			</item>
	</channel>
</rss>
