私はsystem()
関数を知っていますが、それはそれ自身の環境を作成するので、ここで設定されたすべての変数がメインコンソールに転送されるわけではありません。ユーザーが書いたコマンドや*.batファイルで実行されたコマンドを送信できるのでしょうか。
これが必要な理由は、親CMDプロセスのenv変数を設定する方法を探すためです。そして、はい、私はシステムが私にそれをさせたくないことを知っています、しかし多分それのためのいくつかの回避策があります...
アイデアは、次のように、入力パイプを介して送信されるすべてのものを変数として設定するアプリを作成することです。
echo Bob| setvar name
それで:
echo %name%
を生成しますBob
全体的なアイデアは、ファイル名で許可されているfor
ような特別なバッチ文字の特性を考慮して、任意のプログラム出力(コマンドで行う方法を知っています)から変数を簡単に設定できるようにすることです。^!%
多くのcmdスクリプトが簡単になります。