実現したいこと
(現在、自分で調べながら+Copilotでファイルフォルダのアクセスマスクのアクセス許可の情報を収集ができている状態です)集めたアクセスマスクを今度は自分で少しアクセス情報を操作して、変更したファイルをいくつか用意して、もとのアクセス許可情報に戻すという作業を行うコマンドプロンプトを作り、一部Copilotの力も借りて、作りました。実行してもでもエラーも出ずうまくいきません。
発生している問題・分からないこと
バッチは走りますが、結果が反映してデータ通りのアクセスマスクになっていません。
エラーメッセージ
error
1エラーメッセージは出ていません。
該当のソースコード
command
1@echo off 2:: 管理者権限で再実行する 3net session >nul 2>&1 4if %errorLevel% neq 0 ( 5 echo 管理者権限で再実行しています... 6 powershell -Command "Start-Process '%~f0' -Verb RunAs" 7 exit /b 8) 9 10REM 保存したアクセス権データを復元 11ICACLS "C:\Users\maedat\OneDrive - 株式会社\ドキュメント\aclfolder" /restore "C:\Users\maedat\OneDrive - 株式会社\デスクトップ\downloads\p.txt"
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
アクセスの制限になるので管理者権限で実行しないとうまくいかない。
補足
特になし
> エラーメッセージは出ていません。
見えてないだけかも知れません。管理者権限のコマンドプロンプトを開いて 11行目のコマンドを入力してみましょう。
確かに見えていないだけで、文字化けした文字がいっぱい出てきました。
11行目を修正してFinishしました
こういう「管理者権限でなかったら、管理者権限で起動し直す」コマンドは、
そもそも最初から管理者権限で実行してみて確かに動くことの確認してから、外側の「管理者権限でなかったら、管理者権限で起動し直す」を追加します。
プログラミングは、「確かに動くことを確認済みのパーツ」を組み立てます。
今回は、プログラミングというほどの物ではないですが、まあ、同じですね。
短いので、いきなり組み立て後の物をテストしても良いですが、駄目なら基本通りやります。
ありがとうございます。
今回については別の質問サイトで解決して、自己解決という形にさせていただきました。
今回解決したかどうかより、今後類似の事態になったら自力で解決できるか?の方が重要ですね。
1回きりか、今後ずっと無限回かの違いなので。
確かにおっしゃる通りですね。
初めてセキュリティということに関して調べてサイトに上げ、
https://qiita.com/takuo_maeda/questions/1f86e2e6c5dafaa82de9
https://qiita.com/takuo_maeda/questions/3c8b5b1df34858191bd5
いろいろと知見が増えたように思います。
苦労した分の知識は使わないと埋もれてしまいますが、
がんばって減らさないように学習の流れを都議らさないようにがんばります。
激励とおもって受け取らせていただきました。
回答1件
あなたの回答
tips
プレビュー