[過去ログ] 【.cmd】 バッチファイルスクリプト %14 【.bat】 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(1): 2020/08/15(土)07:00 ID:f3kW5kCx(1) AAS
拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう
過去スレ
%13 2chスレ:tech
%12 2chスレ:tech
%11 2chスレ:tech
%10 2chスレ:tech
%9 2chスレ:tech
%8 2chスレ:tech
省14
2(1): 2020/08/15(土)07:38 ID:sYOUYcTP(1) AAS
Swiss File Knife
外部リンク[html]:www.freewarefiles.com
外部リンク[html]:stahlworks.com
ちょっと試したけど使い勝手が良い
3(2): 2020/08/15(土)16:03 ID:YDp7CJXQ(1) AAS
startコマンドでコマンドを実行がエラーになった時にerrorlevelで戻り値確認すると9020になっている。
/wait付けても付けなくても同じ。
これが正しいのかよくわからん
4: 2020/08/15(土)23:16 ID:vVgO0BR5(1) AAS
>>3
普通の動作
実行したアプリが即時終了して9020を返しているだけ
5(1): 2020/08/16(日)07:47 ID:A8ymKSpp(1/2) AAS
そういう結果にはならんなー
(verify offはerrorlevelを0にセット、verify xxxはerrorlevelを1にセットする)
C:\>verify off
C:\>start xxx
ファイル xxx が見つかりません。
C:\>echo %errorlevel%
9059
C:\>verify off
C:\>start /wait xxx
ファイル xxx が見つかりません。
省13
6: 3 2020/08/16(日)09:57 ID:+xZknRBW(1) AAS
>>5
そうそうそう。
9020と9059の違いはありますが、
起動か失敗するコマンドは独自に実行するとOSから別のエラーコード(起動失敗の直接の原因となったエラー)が返ってきますが、
それがstartコマンドから実行すると(自分の場合は)9020になって本来のエラーコードがわからないって事です。
7: 2020/08/16(日)10:40 ID:O0yhKyc9(1) AAS
start /wait
cmd /k
使い方
8: 2020/08/16(日)10:54 ID:7Iew54RL(1) AAS
コマンドは何よ?
9(1): 2020/08/16(日)18:45 ID:5bX3HnFK(1/5) AAS
話変わるけど、括弧で結果が変わるのはなんで?
>color 00 & echo %errorlevel%
0
>(color 00) & echo %errorlevel%
1
10(1): 2020/08/16(日)19:20 ID:Nztll5gc(1) AAS
ぬ?
画像リンク[png]:light.dotup.org
11: 2020/08/16(日)19:28 ID:5bX3HnFK(2/5) AAS
>>10 ありがとう
おれの環境だとあらかじめ
set errorlevel=1
にしてるとそうなるけど
12: 2020/08/16(日)19:29 ID:vTgpRfn/(1/5) AAS
2度目のはerrorlevelを0にして試してないのでは?
&でつなぐと forの中の %変数% と同じで反映されない
試してないけど遅延展開有効にして!errorlevel!とすれば多分大丈夫
()は関係無い
13: 2020/08/16(日)19:36 ID:5bX3HnFK(3/5) AAS
あらかじめ set errorlevel=0 にすると
両方とも 0 になる。
14: 2020/08/16(日)19:42 ID:vTgpRfn/(2/5) AAS
set errolevel=値 したらsetした環境変数が優先されerrorlevel自動代入の機能は死ぬ
set errolevel=
で消せば元に戻る
15: 2020/08/16(日)19:51 ID:5bX3HnFK(4/5) AAS
あらかじめ set errorlevel= にすると
>>9 のようになる
16(1): 2020/08/16(日)20:09 ID:vTgpRfn/(3/5) AAS
pushd .
color 00 & echo %errorlevel%
pushd .
(color 00) & echo %errorlevel%
てしてみ?両方0になるから
2回目の1は1回目のエラーが表示されてる
%変数%の展開のタイミングは構文の評価時なのでそうなる
17: 2020/08/16(日)20:17 ID:A8ymKSpp(2/2) AAS
>color 00 & echo %errorlevel%
これはcolor 00 & echo %errorlevel%を実行する直前のerrorlevelが表示される。
color 00の実行結果を知りたければ&でつながずに2回に分けて実行しなければならない。
>color 00
>echo %errorlevel%
あるいはcmd /v:onで遅延展開を有効にしてから
>color 00 & echo !errorlevel!
18(1): 2020/08/16(日)20:29 ID:5bX3HnFK(5/5) AAS
>>16 ありがとう。括弧は無関係ですね
set errorlevel= だと初期化されないのか
19: 2020/08/16(日)20:39 ID:vTgpRfn/(4/5) AAS
この「構文評価時に展開される」というロジックを使って環境変数を配列のように使えたりする
for /l %%i in (1,1,5) do set A%%i=%%i
for /l %%i in (1,1,5) do echo %%A%%i%%
for /l %%i in (1,1,5) do call echo %%A%%i%%
pause
20: 2020/08/16(日)21:37 ID:vTgpRfn/(5/5) AAS
set errorlevel=値 とsetした時とそうでない時の %errorlevel% は別物
%time% %date% も同じく
ビルトイン特殊環境変数 みたいな感じ
参照出来るけど環境変数としては存在しない
だから set e とか set d とかしても表示されない。環境変数ではないから
set t は tmp temp が表示されるはず
これらは set で同名の環境変数名を設定するとそちらが優先されビルトインの方は参照出来なくなる
環境変数に設定した場合は環境変数を消去するとビルトインの方を参照する
set time=0
echo %time%
省3
21: 2020/08/17(月)07:53 ID:hOPUdkb9(1/2) AAS
%cd% も
他に何かあったっけ?
22: 2020/08/17(月)08:21 ID:hOPUdkb9(2/2) AAS
cd
cmdcmdline
cmdextversion
date
errorlevel
highestnumanodenumber
random
time
23: 2020/08/17(月)11:49 ID:0uhm6UU6(1) AAS
if errorlevel 0 goto err
24: 2020/08/17(月)12:25 ID:Md0hBahZ(1) AAS
後藤は極力使わない
25: 2020/08/17(月)18:56 ID:hmt9CL+F(1/3) AAS
>>18
ERRORLEVEL が初期化できない場合は
>cmd /c exit 7
>set ""|findstr "=E"
=ExitCode=00000007
26: 2020/08/17(月)19:02 ID:hmt9CL+F(2/3) AAS
echo %=ExitCode%
27: 2020/08/17(月)19:16 ID:hmt9CL+F(3/3) AAS
ダメだな exit にしか使えんな
28: 2020/08/22(土)16:25 ID:WW0Ct525(1) AAS
for %a in (a bb あ 冬 円 止 梅 十 申) do echo [%a]| findstr /r /c:"\[[^×][^×]*\]" && echo %a ok || echo %a ng
5cは大丈夫なのに7eがダメ
for %a in (a bb あ 冬 円 止 梅 十 申) do echo [%a]| findstr /r /c:"\[.\]" && echo %a ok || echo %a ng
findstrの正規表現の"."て1文字では無く1byteなんだな。これにも躓いた
29: 2020/08/22(土)20:54 ID:ZT5qbO53(1) AAS
以前から findstr は全角が絡むと挙動不審になる
>echo A | findstr /r /c:"[ア]"
A
30: 2020/08/23(日)00:55 ID:W2kjoCYK(1/2) AAS
echo 陰|findstr /r /c:"[ア]"
陰
echo 陰|findstr /r /c:"A"
陰
"[ア]"は"0x8341" では無く、"0x83","0x41" の文字集合扱いってことみたいだね
"."の扱いもそうだし1byteでしかみてないの確定か。酷い
とするとほぼリテラルでしか使えないな
日本語文章のファイルからアルファベットが含まれる行を抜き出そうとして"[A-z]"とかしても関係無い行だらけになりそうだ
31: 2020/08/23(日)05:33 ID:YFfZnyha(1/3) AAS
ついでに言うと正規表現ではない検索も変だろ
/R 無くても同じ。何のためのオプションだよ
>echo abc | FINDSTR "[b]"
abc
>echo abc | FINDSTR "."
abc
32(1): 2020/08/23(日)09:26 ID:W2kjoCYK(2/2) AAS
それはバグってより設計者の好みだろう
デフォを自分仕様にしたかったのだろうね
findstr "SPはOR検索 + 正規表現"
文字列リテラルで検索したい時は
findstr /L "SPはOR検索 + 文字列リテラル"
findstr /c:"SPリテラル + 文字列リテラル"
SPリテラルで正規表現
findstr /r /c:"SPリテラル + 正規表現"
まあ/r の有り無しで正規表現のスイッチに統一して
/Lや/Cを廃止にしてspによるor検索をスイッチにした方が分かりやすかったろう
省4
33: 2020/08/23(日)18:33 ID:YFfZnyha(2/3) AAS
>>32
勉強になりました。ありがとうございます。
34(1): 2020/08/23(日)19:13 ID:YFfZnyha(3/3) AAS
FINDSTR で間違いやすい例を書いてみた。
>echo a"b"c | FINDSTR /L a"b"c || echo NG
NG
>echo a"b"c | FINDSTR /L a\"b\"c || echo NG
a"b"c
>echo "a\\b" | FINDSTR /L "a\\b" || echo NG
NG
>echo "a\\b" | FINDSTR /L "a\\\\b" || echo NG
"a\\b"
35: 2020/08/24(月)22:11 ID:lQsXqBw5(1) AAS
>>34
こりゃ、呪文だなwww
36: 2020/08/25(火)00:00 ID:u2jzRMP8(1) AAS
最近は ripgrep ばかりで findstr 使わなくなったなぁ
37(1): 2020/08/25(火)07:21 ID:DIRbM727(1/2) AAS
難問
echo a^^b | find "a^b"
38: 2020/08/25(火)10:40 ID:QTO1Ka7Y(1) AAS
>>37 解けた
echo a^^^^b | find "a^b"
a^b
何故こうなるかは知らん
39: 2020/08/25(火)11:04 ID:tde3aaGe(1) AAS
コマンドライン解析で一度、パイプで二度
40(1): 2020/08/25(火)15:32 ID:e1SePToE(1) AAS
難問のような書き方ができないのが初心者
難問のような書き方を回避するのが上級者、時間の無駄なので
41: 2020/08/25(火)17:31 ID:DIRbM727(2/2) AAS
echo a^^b | find "ab"
ab
42: 2020/08/26(水)06:29 ID:uY0vxId0(1) AAS
外部リンク:stackoverrun.com
昨日これにハマってた
こんなエスケープの仕方、気付けるかってのw
俺はリダイレクトじゃなくてfor do の()内でfindstrの後ろに)や&&がある時にダメだった
長いと見辛くなるけど()を付けずに1行で書くとエスケープ無くとも問題ない
findstrもsetと同じく基本的には改行で終わるようにするかサブルーチン呼んでネスト外にした方がいいっぽい
>>40 いやほんとそれな
なるべくネストさせない書き方だったりロジックが大事
43: 2020/08/26(水)08:34 ID:PfiO/aOo(1) AAS
トラブルが嫌なら全部一行ずつ書けばいい
あとはcallとかgotoで制御して
そもそも初級者は何を回避したらいいか判別できない
ハマった経験が無いからね
44(1): 2020/08/26(水)08:42 ID:Aw0pMxIV(1) AAS
stackoverrunなんてパクリクソサイト使うんじゃねー
stackoverflow見ろ
外部リンク:stackoverflow.com
45: 2020/08/26(水)09:18 ID:3xqKZ5M9(1) AAS
>>44
ここはあめぞうのパクリサイトですお
46(2): 2020/09/03(木)14:07 ID:k8mfa657(1) AAS
指定フォルダ配下の全フォルダに対してプログラムを実行したいんですが、
batってフォルダかどうかってどう判別すればいいんですか?
Pythonのisdirみたいなことって出来ますか?
47: 2020/09/03(木)14:42 ID:+v/Eop6e(1/2) AAS
>>46
フォルダに必ずあるファイルの存在チェック
if exist "フォルダ\." echo フォルダです
又はdirコマンドの助けを借りるとか、他にもやり方はありそう
>nul 2>&1 (dir /ad "フォルダ"|find "<DIR>")&&echo フォルダです
48: 2020/09/03(木)14:52 ID:+v/Eop6e(2/2) AAS
あれ、.や..を指定するとダメみたい\のみで
間違って覚えてたのかな
49: 2020/09/03(木)15:38 ID:14mNqQ/J(1) AAS
> 指定フォルダ配下の全フォルダに対してプログラムを実行
> isdirみたいな
for /r "c:\test" %%G in (.) do (
echo "%%G" "%%~aG"
call :sub "%%~fG"
)
pause &exit /b
:sub
set "a=%~a1"
if "%a:~0,1%"=="d" echo folder
省1
50: 2020/09/03(木)20:06 ID:cSGnh9i3(1) AAS
if exist Folder\NUL
NULとかのデバイスが存在すればフォルダ
51: 46 2020/09/03(木)21:43 ID:s/SMQArb(1) AAS
ありがとうございます
いろいろなやり方があるんですね
52: 2020/09/03(木)23:29 ID:YSxN3SpI(1) AAS
誰か挙げてくると思ってたけど嫌われてんの?w > forfiles
forfiles には @isdir というまんまディレクトリ判定のがある
他にもまぁ便利っちゃ便利なんだけど、遅いのであんまり使わない forfiles
53: 2020/09/04(金)00:30 ID:kQRqRY30(1) AAS
xpで使えないと駄目だろ
54: 2020/09/04(金)23:58 ID:1jfeDIRi(1) AAS
XP... 今時…
55: 2020/09/05(土)07:15 ID:6fK9k7zC(1) AAS
cd folder && program でいいやろ…
56: 2020/09/10(木)03:56 ID:udh9kkuM(1/2) AAS
@echo off &setlocal enabledelayedexpansion
set MD5=c472a022eb426cf1733a36e08b31c9f9
set T=0123456789ABCDEFGHIJKLMNOPQRSTUV
for /L %%i in (0,1,25) do (
set /a L=5*%%i/8, L*=2, H=L+2, R=5*%%i%%8
call set /a "N=0x%%MD5:~!H!,2%%%%MD5:~!L!,2%%>>R&31
echo !N!
call set HASH=!HASH!%%T:~!N!,1%%
)
echo "%HASH%"
省15
57(1): 2020/09/10(木)06:03 ID:v191ihhK(1) AAS
こういうのは嫌なのか?
call set /a N=0x%%MD5:~!H!,2%%%%MD5:~!L!,2%%">>"R"&"31
58: 2020/09/10(木)08:08 ID:udh9kkuM(2/2) AAS
>>57
ありがとう
それでも動いたし以下でも行けた
call set /a N=0x%%MD5:~!H!,2%%%%MD5:~!L!,2%%">>R&31
という事は右シフトとアンドだけが問題で他は関係無いっぽい
^だけじゃ出来ないのかな
59: 2020/09/13(日)15:25 ID:W8TB3CjN(1/2) AAS
バッチファイルでメッセージボックスを表示してレジストリのバックアップをするとエラーになります
なんででしょうか
ご教示よろしくお願いいたします
Win7 HP SP1 x64
コード
@echo off
set title=VBScript
set text=%~nx0ファイルを実行しますか?
set type=52
set tmp=%TEMP%\temp.vbs
省12
60: 2020/09/13(日)15:53 ID:UUr/oA+t(1) AAS
たぶんディスクまたはファイルシステムにエラーがある
61: 2020/09/13(日)16:22 ID:rbJ0gfd+(1/2) AAS
実行してないけど多分&で繋いだところで、まだ%tmp%ファイルが作られてないんじゃないかな
ついでに結果判定の行も実行前に通過しちゃいそう
62(2): 2020/09/13(日)17:33 ID:rbJ0gfd+(2/2) AAS
実行してみた
原因は%tmp%を変更したからだね(おそらくregコマンドがtmpを使ってる)
%tmp%→%tmpfile%とでもしとけばいい
63: 2020/09/13(日)17:52 ID:W8TB3CjN(2/2) AAS
>>62
ID:rbJ0gfd+ さんへ
長年の疑問が晴れました。ありがとうございました。m(_ _)m
64: 2020/09/14(月)18:50 ID:QRPjjbWO(1) AAS
なんじゃそれ
65: 2020/09/15(火)08:02 ID:zq4P2IYm(1/3) AAS
昔はバカコーダーの代表格だったif else if...でひたすら羅列してるやつ、くっそ遅かったのに
今win10だとforで回すより速いんだがw 試して思わず吹いたw
XP機なんてもう無いから比較出来んけど
専門用語よく分からんがプリプロセッサだかインタープリタだかがセミコンパイル?最適化?してくれるようになったん?
カビ臭いセオリーに囚われてちゃイカンようだ
66(1): 2020/09/15(火)10:14 ID:QjU8NMVB(1/4) AAS
for do 後の文中に call を入れると遅くなるのを何とかして欲しい。
処理時間が倍増する。下手すると何十倍もかかる
67: 2020/09/15(火)10:25 ID:X+gTbBjK(1/2) AAS
フロッピーディスクでディスクキャッシュ無効にしてbat走らせると
1行ごとにbatファイルを再読み込みしているのが実感できて楽しいよ
68: 2020/09/15(火)14:56 ID:zq4P2IYm(2/3) AAS
>>66
call set とかで多段展開よく使うんだけど
callの代わりにfor文にしてfor変数と遅延展開にして callやめたら確かに速くなったわ
見た目上は call set の方がシンプルで速そうなんだがなー
速い書き方模索してたので助かった. ありがとう
69: 2020/09/15(火)15:12 ID:zo2IeaGi(1) AAS
callの時点で子タスク生成して構文解釈まで行われるじゃん
速いはず無い
70: 2020/09/15(火)15:29 ID:QjU8NMVB(2/4) AAS
おまけにバッチ優先だから気味が悪い
@echo off
echo set a=NG > set.bat
call set a=OK
echo %a%
pause
71: 2020/09/15(火)16:07 ID:zq4P2IYm(3/3) AAS
偶にコマンド名と同じファイル名付けてトラブるバカが居るけどそれは流石にイチャモンが過ぎるだろw
72: 2020/09/15(火)16:17 ID:QjU8NMVB(3/4) AAS
普通は内部コマンド優先
73: 2020/09/15(火)18:34 ID:X+gTbBjK(2/2) AAS
毎回set.batがあるかpath探してるのか?
74: 2020/09/15(火)18:52 ID:QjU8NMVB(4/4) AAS
そうだと思う。たぶん exe とかも捜してる。
余計な処理で時間のロス
75: 2020/09/15(火)19:48 ID:/ea/Q9+g(1) AAS
callって元々バッチファイルを呼ぶためのコマンドだしな
環境変数を遅延展開するために使えるなんて公式ヘルプには載ってない
76: 2020/09/15(火)23:46 ID:otyKrGil(1) AAS
>>62
これ危ないね
windowsとユーザの環境変数は分けないとウィルスに悪用されそう
77(1): 2020/09/18(金)22:08 ID:uEsKVG5e(1/2) AAS
windows板でいい答えが出なかったんでこっちに来ました。
windows10でログオンしなければ走らないプログラム(TV録画予約ソフト)があるので、Windows の自動ログオンを有効にし、
Autoexec.batに
rundll32 user32.dll, LockWorkStation
と記述して直ちにロックすることとしています。
しかしながら、これは不意の停電などで再起動したときの為であって、
自分自身がPCの前にいる場合は、ロック解除をしなければならないのが面倒です。
そこで、バッチファイルで
15秒待つ
その間に何もキーが押されなかったら、
省18
78(1): 2020/09/18(金)22:14 ID:uEsKVG5e(2/2) AAS
こちらの質問はもしかしたらスレ違いかもしれませんが。
あるフォルダ内のファイル一覧をテキストファイルに落としたいと思っています。
一太郎Ver4.3付属のMS-DOS2.11以来、DOSに慣れ親しんでいる私は、
CMD (又は見栄を張ってpowershell)で、
D:\hoge\hoge>dir > list.txt
なんてやってしまうのですが、
Windows10ネイティブのナウなヤングはWindows上で、どのようにやるのでしょうか
コマンドプロンプトなんて使ったことのない、普通のWindowsユーザーさんに教える必要があります
79: 2020/09/19(土)03:30 ID:1TUbP9BW(1) AAS
dir /b > list.txt
80: 2020/09/19(土)05:19 ID:RfEWMQRr(1/2) AAS
>>77
choice /?
タイムアウトも既定の状態も設定出来る
81: 2020/09/19(土)06:32 ID:aPDv4PNE(1/2) AAS
キーを限定してもいいならchoice
82: 2020/09/19(土)06:41 ID:aPDv4PNE(2/2) AAS
>>78
エクスプローラーで選択してホーム、パスのコピー、メモ帳にコピペ保存
Windows板でレスがあったろ
83: 2020/09/19(土)07:30 ID:RfEWMQRr(2/2) AAS
choiceはotherが設定出来たら言うことなしだったのになぁ
forもcontinueとbreakさえあれば。。
あと一歩をわざと使いづらくしてるのかと邪推してしまうわ
84: 2020/09/20(日)20:29 ID:QtwFpjW/(1/2) AAS
恐れ入ります。初心者です。
約400個の.m4aファイルを.mp3形式に変換しようとしています。
以下のようなバッチファイル作成において、出力ファイル名の記述が大変なのですが、
ffmpeg -i aa001.m4a -ab 48k aa001.mp3
ffmpeg -i bb004.m4a -ab 48k bb004.mp3
ffmpeg -i c030.m4a -ab 48k c030.mp3
入力ファイル名の文字列だけを変数のようにして、出力ファイル名として利用できないでしょうか?
以下のようなイメージです。
ffmpeg -i aa001.m4a -ab 48k 変数.mp3
ffmpeg -i bb004.m4a -ab 48k 変数.mp3
省3
85(1): 2020/09/20(日)20:38 ID:bYdUCAyz(1) AAS
m4a ファイルが D:\M4A\ に入っているとして
for %%L in (D:\M4A\*.m4a) do ffmpeg -i %%L -ab 48k %%~nL.mp3
86: 2020/09/20(日)20:57 ID:QtwFpjW/(2/2) AAS
>>85 様
早速のアドバイス、ありがとうございました。
見事に変換できました。
私の発想の方向性が悪く、for文を使えば良かったのかと…
ありがとうございました。
87(1): 2020/10/03(土)10:47 ID:wKgZGKzj(1/2) AAS
入力された文字列を使ってコマンドを走らせようとしてるんだけど変数に値は入るんだけどコマンドの方には空っぽで出力されるんだがなにか処理っているの?
%で囲むだけでいいよね?
88(1): 2020/10/03(土)10:53 ID:HRjNW00f(1) AAS
>>87
多分、遅延環境変数の問題
setlocal enabledelayedexpansion書かないとだめ
89(1): 2020/10/03(土)10:57 ID:wKgZGKzj(2/2) AAS
>>88
それはなんですか?
90: 2020/10/04(日)00:03 ID:1nqCsM3n(1) AAS
>>89
お前の質問が情報不足だから可能性のある回答を当てずっぽうで答えたのだろうよ
なお何かというと setlocal /? を読め
91: 2020/10/04(日)00:16 ID:VPBkvUyg(1) AAS
上から目線怖い
92: 2020/10/07(水)22:42 ID:8t5FIA98(1) AAS
set /p moji=入力するのじゃ
echo 出力するでおじゃる %moji%
うん、何の処理もいらないな
93: 2020/10/08(木)13:42 ID:BulPjeqX(1) AAS
遅延展開に関して setlocal /? にはロクな説明無いよ
詳しい説明が書かれているのは set /? の方
まあ87みたいなアホはスルーしとけ
94(1): 2020/10/09(金)12:07 ID:xYDxCkF1(1/4) AAS
入力処理を2回する時ってなにか特殊な処理とかいるの?
YESNO→文字列入力で
後者の処理で変数に文字列が入らない
95(1): 2020/10/09(金)12:17 ID:ZREy0Q0x(1/3) AAS
>>94
そんなんじゃ分からんよ
具体的に書け
おそらくすぐ上のレスと同じ気はするけど
96(1): 2020/10/09(金)12:41 ID:xYDxCkF1(2/4) AAS
>>95
@echo off
@setlocal
cd /d %~dp0
:START
rem 初期化
set NUM_INPUT=
set ID_INPUT=
set URL_INPUT=
set /P NUM_INPUT="URLはどちらですか?(1:DL/2:ok.ru/9:アップデート):"
省14
97: 2020/10/09(金)13:22 ID:MFDBon0y(1) AAS
すみません、自己解決しました
98: 2020/10/09(金)13:34 ID:xYDxCkF1(3/4) AAS
してないわw
99: 2020/10/09(金)14:11 ID:ZREy0Q0x(2/3) AAS
行の解釈は、行を読み込んだ時点で解釈され、変数は置換される
()で囲まれた部分は全体で一行扱い
つまり括弧内で入力したって、それは括弧を抜けないと有効でなく
カッコ内は既に括弧前(if文の前)の値で置換済み
やっぱり上のレスと同じじゃん
100(1): 2020/10/09(金)14:35 ID:ZREy0Q0x(3/3) AAS
解決策は
構造を変えて、入力と参照のどちらかをif文から出すか
遅延環境変数を使うか
call文で内部の処理をサブルーチンとして呼び出す形にするか
上下前次1-新書関写板覧索設栞歴
あと 902 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.051s