解決

解決

いくつかのショートカットを移動するための短いバッチ プログラムを作成しています。

問題は、Windows が「指定されたファイルが見つかりません」というメッセージを返すことです。

dir /aこれは、システム ファイルと見なされているため (ユーザー アカウントが下位レベルの「システム」を制御すると考えてください)、またはディレクトリ一覧に表示する必要がないにもかかわらず非表示になっているためであると考えられます。

ここで何を変更する必要がありますか? ファイル名/パスは Windows エクスプローラーから直接コピーしたのですべて正しいです。

cd C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System
mkdir Settings
cd C:\ProgramData\Microsoft\Windows\Start Menu
dir
move "Default Programs.lnk" "C:\ProgramData\Microsoft\Windows\Start Menu\System\Settings"
pause

答え1

解決

問題は次のコード行にあります。

move "Default Programs.lnk" "C:\ProgramData\Microsoft\Windows\Start Menu\System\Settings"

@Scott が指摘したように、宛先パスが間違っています。具体的には、次のとおりです。

Start Menu\System

その部分は次のように読むべきです:

Start Menu\Programs\System

備考

たとえ問題を解決できたとしても、言及する価値のある他の事柄があります。

現在のフォルダを変更する

cd C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System

上記のコマンドは、次の条件を満たしていないドライブを使用している場合には、期待どおりには機能しませんC:

D:\>cd C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System

D:\>mkdir Settings

上記の例では、Settingsフォルダーはドライブのルートに作成されますD:。これを回避するには、次の/dパラメータを使用します。

cd /d C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System

コマンド拡張機能が有効になっている場合、コマンドcdはスペースを区切り文字として扱いません (デフォルトでは有効になっています)。とにかく引用符を使用することをお勧めします。

cd /d "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System"

ただし、フォルダはドライブ上に保存されない可能性がありますC:。フルパスをハードコーディングするのではなく、%ProgramData% 環境変数Windows Vista で導入されました:

cd /d "%programdata%\Microsoft\Windows\Start Menu\Programs\System"

以前のオペレーティング システムでは、代わりに を使用していました%AllUsersProfile%。変数名は大文字と小文字を区別しません。

フォルダを作成する

mkdir Settings

入力を節約するには、代わりに以下を使用できますmd

md Settings

コマンドとは異なりcd、スペースmkdirmd区切り文字として扱います。次のコマンドを実行するとします。

md Some settings

この場合、Someとという 2 つのフォルダーが作成されますsettings。 という 1 つのフォルダーを作成する場合は、Some settings引用符を使用する必要があります。一貫性を保つために、必須ではない場合でも常に引用符を使用することをお勧めします。

md "Settings"

次のように完全なパスを指定することもできます。

md "%programdata%\Microsoft\Windows\Start Menu\Programs\System\Settings"

およびサブフォルダーSystemSettings通常は存在せず、両方が一度に作成されます。

参考文献

答え2

パスは常に引用符で囲んでください。名前にスペースが含まれるパスは引用符で囲む必要があります。

これを使って :

cd "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\System"
mkdir Settings
cd "C:\ProgramData\Microsoft\Windows\Start Menu"
dir
move "Default Programs.lnk" "C:\ProgramData\Microsoft\Windows\Start Menu\System\Settings"
pause

関連情報