- すべて
- 画像・動画
並べ替え:新着順
#このアカウントのハッシュタグ一覧 1 Windows: #コマンドプロンプト・BATを使いこなす #WSH・JScriptでバッチ作成 #PowerShell入門 #Windowsパソコンのメンテナンス Linux: #linuxの基礎を勉強 エンジニア論: #バッチ職人になろう
#WSH・JScriptでバッチ作成 13 exec_cmd( "dir /s /b *.txt", { // スクリプト置き場にあるhogeフォルダ内をカレントフォルダにして,コマンド実行 current_dir : script_dir_path + "\\hoge" }).each(function( file_path ){ WScript.Echo( file_path ); }); source-code-student.hatenablog.jp/entry/20150114…
#WSH・JScriptでバッチ作成 12 exec_cmdの使い方 source-code-student.hatenablog.jp/entry/20150114… exec_cmd( "dir /s /b *.txt", { // スクリプトの置き場をコマンド実行のカレントディレクトリにする current_dir_same_as_this_script : true }).each(function( file_path ){ WScript.Echo( file_path ); });
#WSH・JScriptでバッチ作成 11 ライブラリ "exec_cmd" ・WSHからコマンドプロンプトを 自由自在に呼び出すことができる。 ・OS上でのコマンドの実行結果の 出力の各行に対し, each() などの配列イテレータメソッドを 直で実行できる。 source-code-student.hatenablog.jp/entry/20150114…
#WSH・JScriptでバッチ作成 10 // フォルダのフルパス var dir_path = script_dir_path + "¥¥hoge"; // フォルダを作成 var fso = WScript.CreateObject("Scripting.FileSystemObject"); if( fso.FolderExists(dir_path) ) { WScript.Quit(); } fso.CreateFolder(dir_path);
#WSH・JScriptでバッチ作成 9 // スクリプトの置いてある場所(フォルダパス)を表示 var fso = new ActiveXObject("Scripting.FileSystemObject"); var file_path = WScript.ScriptFullName; var dir_path = fso.getParentFolderName( file_path ); WScript.Echo( dir_path );
#WSH・JScriptでバッチ作成 8 テキストの中身をUTF8で読み込む var sr = new ActiveXObject("ADODB. Stream"); sr.Type = 2; // テキスト sr.charset = "utf-8"; sr.Open(); sr.LoadFromFile( file_path ); var str = sr.ReadText( 1 ); // 全行 sr.Close();
#WSH・JScriptでバッチ作成 7 // SJISでテキストファイルを全行読み込み var fso = new ActiveXObject("Scripting.FileSystemObject"); var ForReading = 1; // 読み込み var txt_r = fso.OpenTextFile( file_path, ForReading ); var str = txt_r.ReadAll(); WScript.Echo( str );
#WSH・JScriptでバッチ作成 6 オブジェクトの作り方 ① WScript.CreateObject("Scripting.FileSystemObject") ② new ActiveXObject("Scripting.FileSystemObject") WSH VBScriptでは①のみ使用可能。 WSH JScriptでは①②を使用可能。 htaファイル内のJScriptは②のみ使用可能。
#WSH・JScriptでバッチ作成 5 BATとWSHを1ファイルに混在させるshebang記法 computer-technology.hateblo.jp/entry/20131025… ・コマンドプロンプト @で始まる行は出力抑止。WSHコードの部分はGOTO :EOFで読み飛ばす ・JScript @ if() は「@ ifステートメント」(条件付きコンパイル)。BATコードの部分を読み飛ばす
#WSH・JScriptでバッチ作成 4 MSDOSとWSHのコードを 1つの.batファイル内に混在表記できる。 ※@の後ろのスペース削除 @ if (0)==(0) ECHO OFF echo ■BAT前処理■ cscript.exe //nologo //E:JScript "%~f0" %* echo ■BAT後処理■ @ pause GOTO :EOF @ end WScript.echo("■WSH処理■");
#WSH・JScriptでバッチ作成 3 batファイルにファイルをドロップし そのファイル情報をWSHに渡す。 a.batの内容 rem 第1引数:このbatにドロップされたファイルのフルパス cscript.exe //nologo //E:JScript b.js "%~1" @ pause b.jsの内容 var file_path = WScript.Arguments.Unnamed(0);
#WSH・JScriptでバッチ作成 2 // batからWSHへ渡ってきた引数をチェック if( // 引数を3つ受け取りたい場合 WScript.Arguments.length < 3 ) { WScript.Echo("cscriptへの引数が足りません。"); WScript.Quit(); }
#WSH・JScriptでバッチ作成 1 batからWSH JScriptを呼び出し, 引数を渡せる。 a.batの内容: cscript.exe //nologo //E:JScript b.js hoge fuga @ pause b.jsの内容: var s1 = WScript.Arguments.Unnamed(0); →"hoge" var s2 = WScript.Arguments.Unnamed(1); →"fuga"
#このアカウントのハッシュタグ一覧 1 Windows: #コマンドプロンプト・BATを使いこなす #WSH・JScriptでバッチ作成 #PowerShell入門 #Windowsパソコンのメンテナンス Linux: #linuxの基礎を勉強 エンジニア論: #バッチ職人になろう
#WSH・JScriptでバッチ作成 13 exec_cmd( "dir /s /b *.txt", { // スクリプト置き場にあるhogeフォルダ内をカレントフォルダにして,コマンド実行 current_dir : script_dir_path + "\\hoge" }).each(function( file_path ){ WScript.Echo( file_path ); }); source-code-student.hatenablog.jp/entry/20150114…
#WSH・JScriptでバッチ作成 12 exec_cmdの使い方 source-code-student.hatenablog.jp/entry/20150114… exec_cmd( "dir /s /b *.txt", { // スクリプトの置き場をコマンド実行のカレントディレクトリにする current_dir_same_as_this_script : true }).each(function( file_path ){ WScript.Echo( file_path ); });
#WSH・JScriptでバッチ作成 10 // フォルダのフルパス var dir_path = script_dir_path + "¥¥hoge"; // フォルダを作成 var fso = WScript.CreateObject("Scripting.FileSystemObject"); if( fso.FolderExists(dir_path) ) { WScript.Quit(); } fso.CreateFolder(dir_path);
#WSH・JScriptでバッチ作成 9 // スクリプトの置いてある場所(フォルダパス)を表示 var fso = new ActiveXObject("Scripting.FileSystemObject"); var file_path = WScript.ScriptFullName; var dir_path = fso.getParentFolderName( file_path ); WScript.Echo( dir_path );
#WSH・JScriptでバッチ作成 7 // SJISでテキストファイルを全行読み込み var fso = new ActiveXObject("Scripting.FileSystemObject"); var ForReading = 1; // 読み込み var txt_r = fso.OpenTextFile( file_path, ForReading ); var str = txt_r.ReadAll(); WScript.Echo( str );
#WSH・JScriptでバッチ作成 6 オブジェクトの作り方 ① WScript.CreateObject("Scripting.FileSystemObject") ② new ActiveXObject("Scripting.FileSystemObject") WSH VBScriptでは①のみ使用可能。 WSH JScriptでは①②を使用可能。 htaファイル内のJScriptは②のみ使用可能。
#WSH・JScriptでバッチ作成 5 BATとWSHを1ファイルに混在させるshebang記法 computer-technology.hateblo.jp/entry/20131025… ・コマンドプロンプト @で始まる行は出力抑止。WSHコードの部分はGOTO :EOFで読み飛ばす ・JScript @ if() は「@ ifステートメント」(条件付きコンパイル)。BATコードの部分を読み飛ばす
#WSH・JScriptでバッチ作成 4 MSDOSとWSHのコードを 1つの.batファイル内に混在表記できる。 ※@の後ろのスペース削除 @ if (0)==(0) ECHO OFF echo ■BAT前処理■ cscript.exe //nologo //E:JScript "%~f0" %* echo ■BAT後処理■ @ pause GOTO :EOF @ end WScript.echo("■WSH処理■");
#WSH・JScriptでバッチ作成 3 batファイルにファイルをドロップし そのファイル情報をWSHに渡す。 a.batの内容 rem 第1引数:このbatにドロップされたファイルのフルパス cscript.exe //nologo //E:JScript b.js "%~1" @ pause b.jsの内容 var file_path = WScript.Arguments.Unnamed(0);
#WSH・JScriptでバッチ作成 2 // batからWSHへ渡ってきた引数をチェック if( // 引数を3つ受け取りたい場合 WScript.Arguments.length < 3 ) { WScript.Echo("cscriptへの引数が足りません。"); WScript.Quit(); }
#WSH・JScriptでバッチ作成 1 batからWSH JScriptを呼び出し, 引数を渡せる。 a.batの内容: cscript.exe //nologo //E:JScript b.js hoge fuga @ pause b.jsの内容: var s1 = WScript.Arguments.Unnamed(0); →"hoge" var s2 = WScript.Arguments.Unnamed(1); →"fuga"