タグ

cmdに関するzetamattaのブックマーク (62)

  • バッチファイル界の魔境『遅延環境変数』に挑む(おまけもあるよ) - Qiita

    今回は、forと双璧を為すバッチファイル界の魔境、遅延環境変数に挑みたいと思います。 1.遅延環境変数とは? さて、大分前に投稿した.bat(バッチファイル)のforコマンド解説。の中で、次のようなことを述べました。(見なくても問題ないです) 特に遅延環境変数については、for文を使う上でほぼ確実に理解する必要が出てくると思われます。 その理由を説明するには、バッチファイルでの「変数を読み込むタイミング」について知っておく必要があります。 変数の読み込みタイミング 次のコードをご覧下さい。 ちなみに、このページ内にあるコード表示は、そのままコピー&ペーストでバッチファイルとして動くようになっています。 実行しても、ええんやで。 さて、話を戻して…。上のコード、実行結果はどうなると思いますか? まず最初はnumが1なので、if文は真になりますね。ここまでは特に大したことはありませんが…。 i

    バッチファイル界の魔境『遅延環境変数』に挑む(おまけもあるよ) - Qiita
    zetamatta
    zetamatta 2019/01/05
    CMD のモードを変えずに遅延変数評価ができる「call set」は素晴らしいな
  • ファイルタイムの秒単位の比較をするバッチファイルを作ってみた - Windows 2000 Blog

    zetamatta
    zetamatta 2018/07/13
    まさかの forfiles の活用ッ
  • cmd.exeのせいで子プロセス呼び出しが脆弱になっちゃう件 - Qiita

    TL;DR cmd.exeはカレントディレクトリーにあるファイルをPATHにあるファイルより優先して実行してしまうと言うクソ仕様なので気をつけよう。 安全のために、vim-gitgutterを使っている人は以下の設定を追記しよう。 if has('win32') " Git for Windowsをデフォルトでインストールした場合。お使いの環境に合わせて変えること。 let g:gitgutter_git_executable = 'C:\Program Files\Git\bin\git.exe' endif 当然、ほかにも危険なVimプラグイン(など)がたくさんあると想定される。ほかのコマンドを呼び出すソフトウェアを書く際は、少なくともWindowsで使用されることを想定する場合は、極力shell経由で呼び出すAPIは使用しないこと。自動でcmd.exeが使用され、脆弱性になり得る。

    cmd.exeのせいで子プロセス呼び出しが脆弱になっちゃう件 - Qiita
    zetamatta
    zetamatta 2018/05/01
    なるほど。nyagos は cmd.exe と互換動作を目指しているけど、この点を回避する方法を検討してみよう
  • コマンドプロンプトの起動に関するTIPS - Qiita

    今までコマンドプロンプトを起動するにはWin + rで「ファイル名を指定して実行」を開いてcmdと入力していた。 目的のディレクトリまでcdするのにエクスプローラのアドレスバーからコピペしたり…… とても怠い。 エクスプローラからコマンドプロンプトを開く エクスプローラのアドレスバーにcmdと入力することで表示中のディレクトリをカレントディレクトリとしてコマンドプロンプトを起動できる。 アドレスバーへはAlt + dでフォーカスできるので、 Alt + d → cmd → Enter とすればよい。かなりスムーズ。 コマンドプロンプトからエクスプローラを開く 逆にコマンドプロンプトのカレントディレクトリをエクスプローラで開くにはexplorer .またはstart .と入力すればよい。 こちらも結構使える。 Register as a new user and use Qiita more

    コマンドプロンプトの起動に関するTIPS - Qiita
    zetamatta
    zetamatta 2017/08/29
    cmd.exeに限らず、エクスプローラのバーの中でコマンド名をタイプすると現在のフォルダーをカレントディレクトリにして起動しますね!PATHが通っていなければフルパス書かなきゃいけないけど
  • Office 365のデスクトップアプリケーションをバッチファイルで修復 - Qiita

    能書き Office 2013ってよく壊れません? インストールされている台数が多いというのもあるけど、週に数回ほどOfficeが不調だという問い合わせがくるので、その都度Officeの修復を案内しています。 Officeの修復は結構優秀なようで、問い合わせの7〜8割はこれで直る。 でも修復の手順が地味に面倒くさい。 コントロールパネルのプログラムのアンインストールを開く Microsoft Office ProPlusを選択して変更 修復方法を選ぶ 修復開始 ということでお手軽に実行できるようにバッチファイルにしてみました。 コード @echo off net session >nul 2>&1 if %errorLevel% == 2 ( echo 管理権限で実行されていません。 echo 右クリックして「管理者として実行」で実行してください。 echo. pause exit /b

    Office 365のデスクトップアプリケーションをバッチファイルで修復 - Qiita
    zetamatta
    zetamatta 2017/06/12
    管理者モードか否かの判定方法「net session >nul 2>&1」「if %errorLevel% == 2」は新たな知見だ
  • iniファイルを読み込むbatファイルの作り方。今の時代でも充分役に立つゾ!(タブンね・・・) | Gabekore Garage

    ただ、上記ブログでは細かい説明がありませんので、解説を入れてここで説明させて頂きます。 しかし、私はbatファイルの作り方はあまり詳しくありません。 解説と言いながら、調べながら書きましたので間違いがあるかもしれません。(いや、あるでしょう、あるはずだ! 頼むあってくれ!!) 間違いがありましたら、是非ご指摘ください。 あと、私好みにちょっと改造してます。 その改造も当に正しいのかどうか分かりませんが、まぁ動いているので今のところは良しとしています。 今回のサンプル 使うファイルはこれだけ。 kick.bat GetIni.bat fuga.ini 概要としてはこんな感じです。 kick.bat はその名の通りキックするためのものです。 何をキックするかと言いますと、GetIni.bat です。 kick.bat が GetIni.bat をキック(起動)するとともに、指定の値を幾つか渡

    iniファイルを読み込むbatファイルの作り方。今の時代でも充分役に立つゾ!(タブンね・・・) | Gabekore Garage
  • 海外FX攻略ナビ |海外FX攻略方法、おすすめ口座、おすすめの攻略法を解説

    海外FX攻略ナビ 海外FX攻略ナビでは、海外FX攻略について、どこよりも詳しく解説しています。 上から下まで読んでいただければ、海外FX攻略のすべてを知ることができます。 海外FX初心者の方におすすめです。 第一章 なぜ、海外FXなのか?

    海外FX攻略ナビ |海外FX攻略方法、おすすめ口座、おすすめの攻略法を解説
    zetamatta
    zetamatta 2016/10/06
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor\DisableUNCCheck を DWORD の 1 で作れば、CMDでUNCパスを使えるだと!?
  • Windowsでシェル芸を強行するデモ - Qiita

    TL;DR コマンドプロンプトでは快適にシェル芸できなかったので wsh で動く unix っぽい名前のコマンドをチマチマ作っていた。 その結果、なんかそれっぽく動くようになったので、 最近仕事で見たデータなどをネタにデモなどしてみようかと思った。 この記事で使用しているコマンド群は、以下の URL から取得できます。 https://github.com/asterisk9101/wincmd はじまりはじまり 突然ですが以下のようなファイルがあります。 C:\> cat text01.log colA, colB ----, ---- hoge, 1000 fuga, 1200 piyo, 3041 // comment C:\> text01.log は空白区切りで2列を持つテーブル状のテキストファイルです。 最終行には // から始まる日語のコメントが入力されています1。 tex

    Windowsでシェル芸を強行するデモ - Qiita
  • バッチファイルでの引数のダブルクォートの扱い方と特殊文字の扱い方 - Humanity

    気を付ける事は3つ。特に最後が重要。 人生は限られているし、たいてい人生の終わりより納期が先に来るはず。 関数呼び出し側は必ずダブルクォートで括る 半角スペース、()等を含む引数は必ず括る必要があるが、常に括っていた方が無難。 「cmd /?」を実行した際の末尾の出力から引用すると引用符が必要な特別な文字は「<半角スペース>&()[]{}^=;!'+,`~」 呼び出された関数側で引数を参照する際は「"%~1"」のように「~」を付け、ダブ ルクォートを取り除いた上で更にダブルクォートで囲む 呼び出し元の引数をダブルクォートで囲んでいた場合、%1は「"不運(ハードラック)と踊(ダンス)っちまったんだよ…"」のようにダブルクォートで囲まれたままになる なので"%1"は「""不運(ハードラック)と踊(ダンス)っちまったんだよ…""」のように二重でダブルクォートに囲まれた文字列になってしまう これを

    バッチファイルでの引数のダブルクォートの扱い方と特殊文字の扱い方 - Humanity
    zetamatta
    zetamatta 2016/01/02
    ++!
  • .bat(バッチファイル)で、setコマンドを使いこなすための5つの豆知識 - Qiita

    setコマンドはバッチファイルに必須のコマンドです。 そこで、setコマンドの豆知識的な機能を紹介します。 1.set /aに関して その数自身を計算するときは、簡単な書き方ができる。

    .bat(バッチファイル)で、setコマンドを使いこなすための5つの豆知識 - Qiita
    zetamatta
    zetamatta 2015/12/25
    改行なしの echo として「set /P dummy=(プロンプト) <nul」とは考えよったな…
  • Windows、2つのファイルの更新日時を比較するバッチファイル|マコトのおもちゃ箱 ~ぼへぼへ自営業者の技術メモ~

    多分探せば転がっているでしょうが、気が向いたので作ってみました。 引数にファイルを2つ指定すると、更新日時を比較してどちらが新しいかを判定してくれるバッチファイルです。 処理はこんなんφ(--)適当にコピペして使ってください。 @ECHO OFF REM ファイル名 SET FILE1="" SET FILE2="" SET NEWER_FILE="" REM 更新日時 SET TIMESTAMP1="" SET TIMESTAMP2="" SET NEWER_TIMESTAMP="" REM 引数チェック IF "%~1"=="" ( ECHO "引数1未指定" GOTO END ) ELSE ( IF NOT EXIST %1 ( ECHO "引数1のファイルが存在しない" GOTO END ) ELSE ( SET FILE1=%1 ) ) IF "%~2"=="" ( ECHO "

    zetamatta
    zetamatta 2015/07/24
    「%~t○」でタイムスタンプ文字列が取得できるので、それと IF 文の GTR 演算子を併用すると、二つのファイルのどちらが新しいかを判断できる
  • .bat(バッチファイル)でゲームを作るうえで必要な、10の基礎知識。 - Qiita

    はじめに この投稿は、2作目です。より基的なことが1作目:.bat初心者・未経験者に贈るコマンド集に書いてあります(一部重複あり)。 また、いつも通り冗長な上、今回は当に自分用の走り書きレベルで、内容に関しても普通は使わないようなこと(ゲーム向け?)がそこそこ書いてあります(意味が無いとも言います)。 そのためかなり偏っており、多分ですが当の未経験者には辛いと思われます。【変数】【分岐】とは何か、が分かればある程度は大丈夫だと思います。たぶん。 概略(★は難易度と需要のなさ) 1.@echo offとは★ 2.遅延環境変数★★★ 3.call call call★★(需要はなさそう)(でも重要?) 4.カレントディレクトリの移動★ 5.for文①:回数ループ★★ 6.for文②:検索・抽出★★★ 7.set /aの便利機能★ 8.forループとgotoループの違い★ 9.テキストファ

    .bat(バッチファイル)でゲームを作るうえで必要な、10の基礎知識。 - Qiita
  • テキストファイルを行数指定して分割出力するバッチを作りました - Qiita

    前提 とあるCSVファイルを処理するプログラムの制約により、データを100件ずつ分割しなければならなくなりました。 先頭3行はヘッダーとして認識されるため、分割ファイルそれぞれに同じヘッダーが必要です。 バッチにしました 適当にコピーしてお使いください。一応設定方法を下に載せます。エラー処理は適宜追加してください。 @echo off setLocal EnableDelayedExpansion goto :begin Text File Splitter ------------------------------ USAGE: Check Settings section before running. :begin Rem ------------------------------ Rem Settings ... Rem ----------------------------

    テキストファイルを行数指定して分割出力するバッチを作りました - Qiita
  • windowsのdosbatchでファイルかディレクトリかの判定 - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    windowsのdosbatchでファイルかディレクトリかの判定 - Qiita
    zetamatta
    zetamatta 2015/02/14
    うまい方法だけど、ダブルクォートで囲むと機能しなくなるのがな…空白ありのディレクトリだと使えない
  • MinGW の mintty で対話モード、ついでに vim 設定

    私は最近引っ越して、学校の近くに住むことになりました。 距離としては5キロぐらい。 そんな道程を電車で行くのもいいんですが、気分転換というか、自転車で登校できたら寄り道も出来ていいなと思い、初めてのロードバイクを買いました。 最初はオートリースでロードバイクを借りました。そして購入。 そして届いたロードをママチャリと比べて見ると、サドルの高さやタイヤの細さに驚きました。 せっかくなのでスピードメータを取り付けてママチャリとロードを比べてみました。 ママチャリは平均速度15キロ程度思いっ切り走っても30キロが限界。 そしてロードはというと・・・・・・。 さすが走るための自転車。水切りや無駄な重たいものが無い為速いこと速いこと 平均速度は25キロ程で、最高で45キロまで行きました。 さすがの自分もそんな自転車にびっくり。 自分の通学路は右が山、左が海と絶景が楽しめるようになっていて 夏の涼しい

    MinGW の mintty で対話モード、ついでに vim 設定
  • 【cmd】WindowsXPにはなくてWindows7にはあるコマンド

    したら、見たことのないコマンドがいくつか出てきたので、目ぼしいものを調べてピックアップ!※WindowsXP Home Edition(以後XP)とWindows7 Home Premium 64bit(以後win7) を比較しています 見つけたコマンド where.exe XPにはなく、win7にはある whichっぽいコマンド。 where where => C:\Windows\System32\where.exe rem ワイルドカードも使えるっぽい where *c?py* => C:\Windows\System32\diskcopy.com => C:\Windows\System32\diskcopy.dll => C:\Windows\System32\Robocopy.exe => C:\Windows\System32\xcopy.exe rem 正規表現は使えないっ

    zetamatta
    zetamatta 2015/01/30
    そういうものは早く教えていただきたい
  • cmder | Console Emulator

    cmder is software package that provides great console experience even on WindowsCmder is a software package created out of pure frustration over absence of nice console emulator on Windows. It is based on amazing software, spiced up with Monokai color scheme and custom prompt layout. Looking sexy from the start. With help of the best Think about cmder more as a software package than a separate app

    cmder | Console Emulator
    zetamatta
    zetamatta 2014/08/20
    ふむ、ConEmu と clink と msysgit を一つにしたパッケージか
  • バッチファイルで、setlocal〜endlocal内での変数の値を外部に引き継ぎたい! - IIJIMASの日記

    setlocal/endlocalコマンドは環境変数のローカル化のためにあります。 ローカル化とはsetlocalからendlocalの範囲内で定義した変数がその中だけ有効でその外部の同名の変数に影響を及ぼさないようにすることです。 @echo off setlocal set a=1 echo %a% endlocal echo %a% goto :EOF を実行すると 1 ECHO は <OFF> です。 となります。 入れ子にもできます。 @echo off setlocal set a=0 setlocal echo %a% set a=1 setlocal echo %a% set a=2 echo %a% endlocal echo %a% endlocal echo %a% endlocal goto :EOF を実行すると 0 1 2 1 0 となります。外側から内側へは同

    バッチファイルで、setlocal〜endlocal内での変数の値を外部に引き継ぎたい! - IIJIMASの日記
    zetamatta
    zetamatta 2014/06/05
    endlocal && set a=%a% とかすると、setlocal~endlocal ブロック内の変数を外に持ち出せる
  • 指定した名前のディレクトリを再帰的に削除するコマンドライン - IIJIMASの日記

    以下のようなツリーのディレクトリ(フォルダ)がある場合に「target」ディレクトリを一括で削除したいとします。 ├─A │ ├─AA │ │ ├─AAA │ │ │ └─target │ │ ├─AAB │ │ │ └─target │ │ └─target │ ├─AB │ │ └─target │ └─target ├─B │ ├─BA │ │ └─target │ └─target └─target さてどうすればいいでしょう? Windowsコマンドにはファイルを削除するコマンドにdelがあります。 del /? DEL [/P] [/F] [/S] [/Q] [/A[[:]属性]] 名前 ERASE [/P] [/F] [/S] [/Q] [/A[[:]属性]] 名前 名前 ファイルまたはディレクトリ (複数可) の一覧を指定します。 複数のファイルを削除するときはワイルドカー

    指定した名前のディレクトリを再帰的に削除するコマンドライン - IIJIMASの日記
  • Windows環境でRSpecなどの出力に色を付けるには - 萬由無事覚書

    これから ansiconをインストールする。 インストールは次のようにする。 アーカイブを展開 32bit OSならx86フォルダ、64bit OSならx64フォルダの中身を任意の場所にコピー。 レジストリを使用してでも簡単に使いたい場合 cmd.exeを実行し、コピーしたフォルダにcdする。 その後、次のコマンドを実行。 ansicon -i 実行後、cmd.exeが実行されるたびに自動的にansiconが実行されるようになる (cmd.exeのAutoRunレジストリエントリにansiconを設定してくれる)。 この状態で、普通にコマンドを実行すれば、出力に色がつく。例えば C:\dir> rspec --color ansiconをアンインストールしたい場合は次のようにする。 ansicon -u これでレジストリから設定が消える。あとはインストールしたフォルダを消去する。 どうあっ

    Windows環境でRSpecなどの出力に色を付けるには - 萬由無事覚書
    zetamatta
    zetamatta 2014/05/16
    コマンドプロンプトをエスケープシーケンスに対応させてくれるツールがあるようです。