【.cmd】 バッチファイルスクリプト %15 【.bat】 (819レス)
1-

565: 2024/10/03(木)08:39 ID:hcouLIA5(2/2) AAS
リンクはこちらです
外部リンク:chatgpt.com
566: 2024/10/03(木)10:24 ID:EmzEDUtK(1) AAS
適切だと思ったらマルチポストも辞さない
567: 2024/10/04(金)07:40 ID:BveI+02d(1) AAS
以下を消したら動くようになりました。
解決です。

Param(
[int]$Length = 16,
[switch]$IncludeUppercase,
[switch]$IncludeLowercase,
[switch]$IncludeNumbers,
[switch]$IncludeSymbols
)
568: 2024/10/12(土)02:43 ID:fuP8Oeol(1) AAS
iris-microという便利なソフトつかって 画面明るさ色温度かえてます
バッチファイルが2種類あって この設定をきりかえつかっています
ふたつのバッチファイルを 交互に繰り返すようなスクリプト作れますか
プロセスがのこったりしてるようでもないので難しいでしょうか?
569: 2024/10/12(土)16:51 ID:4VpnKVlz(1) AAS
バッチを順番に呼び出して先頭にgotoすれば交互になるような気がします
570: 2024/10/12(土)17:04 ID:qxhXc26A(1/2) AAS
同じbatで起動するたびにサイクリックに実行する内容を切り替えるって意味じゃないかな
何か外部にフラグみたいなもの(又は実行用にbatをコピーしてそれを呼び出す)を用意するといいんじゃないかな
同時起動の排他制御とかは個人使用ならまあ不要だろう
571: 2024/10/12(土)17:39 ID:Iy6RGAFA(1/2) AAS
状態を持たせたいならバッチの名前を変えるという荒業もできるね
572: 2024/10/12(土)18:07 ID:qxhXc26A(2/2) AAS
自分自身の名前は変えられないので別ファイルを用意
そもそもbat名を変えたら起動の度に別bat名で起動することになり元々の2つのbatのある状態と変わらんじゃん
573: 2024/10/12(土)18:14 ID:Iy6RGAFA(2/2) AAS
リネームは昔からあるハックだけどな
頭悪そう
574: 2024/10/12(土)19:31 ID:d82xRt2j(1) AAS
echo.>stat_on
if exist stat_on
とかでチェック用ファイルで分岐するのが手っ取り早い

より汎用的にやるなら
inifile.exeみたいの作るか拾うかして状態を読み書きする
575
(1): 2024/11/06(水)18:43 ID:KAHjZpf+(1) AAS
winPCで
エクスプローラから
複数ファイルを
バッチファイルにドロップして
拡張子付きファイル名のみ(パスなし)を
1行1ファイル名で
list.txtに書き出したい
どの様に?
576: 2024/11/06(水)19:42 ID:0Z0sjFnd(1) AAS
てすと.com
577
(2): 2024/11/07(木)07:18 ID:diE3Ipx6(1) AAS
>>575
@echo off & chcp 65001
set a="%cmdcmdline:"=" "%"
call :x > list.txt & exit
:x
set a=%a:*.bat" =%
for %%i in (%a:""=%) do set a=%%i& call :y
exit /b
:y
if "%a:~1,1%"==" " set a=%a: =" "%
for %%i in (%a:""=%) do echo %%~nxi

list.txt は UTF-8 にしてみた
バッチの拡張子は .bat
578: 2024/11/07(木)10:34 ID:sTPvG4+T(1/2) AAS
初めからコマンドプロンプトでやればいいのに
579: 2024/11/07(木)10:35 ID:sTPvG4+T(2/2) AAS
まずは特定のフォルダにファイルを集めるという発想がないんだろうな
580
(1): 2024/11/07(木)11:01 ID:5OQwBO7R(1/2) AAS
batファイルで=を含む置換えの時の方法教えてください。
入力は Hello World 12=34

@echo off
set /p mystringA=あいさつ:
set mystringB=%mystringA:12=34=4567%
echo %mystringB%

結果をこのようにしたい
Hello World 4567
581
(4): 2024/11/07(木)12:14 ID:9xnRXsv4(1) AAS
>>580
batだけでやるには大変(=の置換は無理)
変換前に1文字ずつ判定して=だったら普通使われない文字(=とか)に変えるとかしないとできない
別の方法としては別の言語でサポートしてやれば楽
@if (0)==(0) echo off
rem *** このブロックにbat内容を記述する
set s=Hello World 12=34
cscript //nologo /e:jscript "%~f0" "%s%"
rem for /f "tokens=*" %%i in ('cscript //nologo /e:jscript "%~f0" "%s%"') do set s=%%i
rem echo %s%
goto :eof
rem ***
@end
//これ以降はjscriptの処理部
var data=WScript.Arguments(0).replace(/12=34/g,"4567");
WScript.StdOut.WriteLine(data);
582: 2024/11/07(木)12:33 ID:5OQwBO7R(2/2) AAS
>>581
サイトによって特殊文字は^だったり"を使ったりで試して出来なかった
代案をわざわざありがとうございます^^
583
(1): 2024/11/07(木)13:07 ID:sK42d9tR(1/2) AAS
>>577
神様ありがとう
なんでかわからないけど動きました

list. txtを%USERPROFILE%\Desktopに作成するにはどのようにすれば?
単純に
"%USERPROFILE\Desktop\list.txt"
に変更してもダメでした
584
(1): 2024/11/07(木)14:02 ID:DJJuXIJX(1) AAS
エクスプローラーで「パスのコピー」あるの知ってる?
windows11 なら選択後に shift+ctrl+c
バッチとかいらんだろ
585: 2024/11/07(木)16:57 ID:sK42d9tR(2/2) AAS
>>577
>583
今やったらできました
お騒がせしました

もしよろしければ
解説お願いします
586
(1): 2024/11/08(金)02:14 ID:NHkTpL6A(1/5) AAS
del /q "C:\Users\%username%\Desktop\新しいフォルダー"

これで新しいフォルダー内が消えないのですが?
587: 2024/11/08(金)03:03 ID:NHkTpL6A(2/5) AAS
日本語のファルダだとダメなんですかね?
588: 2024/11/08(金)03:07 ID:8ciHN7a8(1) AAS
文字コードが違うんじゃないですかね
589: 2024/11/08(金)03:20 ID:NHkTpL6A(3/5) AAS
なるほど理解しました
590: 2024/11/08(金)03:24 ID:NHkTpL6A(4/5) AAS
rdコマンドで親フォルダを削除しないようにするにはどう書けば良いのでしょうか?
591: 2024/11/08(金)03:36 ID:NHkTpL6A(5/5) AAS
rdコマンドで無理なら対象のフォルダ以下にあるファイルやフォルダを全て削除するものでもかまいません。
592: 2024/11/08(金)10:30 ID:n9fsiKUu(1) AAS
カレント移動すれば?
593: 2024/11/08(金)11:10 ID:PSMBlcAH(1) AAS
フォルダーごと削除してから新規作成したほうが簡単じゃね
594: 2024/11/08(金)11:27 ID:IbrHrevx(1) AAS
俺の環境だと>>586で消えるけど、/q付けないでやったらファイル削除確認メッセージが出てるか?
出てないなら中身のファイルの属性が隠しファイルになってるとか
1-
あと 225 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.013s