CMD söker bara aktuell dir

Permalänk
Medlem

CMD söker bara aktuell dir

Sedan några veckor tillbaka har jag vart tvungen att gå manuellt till System32 mappen från CMD för att få den att köra det som ligger där.

Se bild för exempel:

Någon som vet en möjlig förklaring till varför detta kan ha uppstått?

I övrigt så fungerar alla "windowsfunktioner" som de skall.

Visa signatur

3570K @ de-lid @ 4.8 GHz | Sabertooth Z77 | 8GB-2133MHz-CL9 | ATi R9 290 @ 1150/1375
3x F60 RAID0 + 3TB WD Green
{@Custom H2O Loop}
Dell 3007WFP 2560x1600 BLANK AG removed+BLbleed mod | Z-5500 @ cap-mod
Garage Band komposition!

Permalänk
Medlem
Skrivet av Jekean:

Sedan några veckor tillbaka har jag vart tvungen att gå manuellt till System32 mappen från CMD för att få den att köra det som ligger där.

Se bild för exempel:

http://i59.tinypic.com/24npw5k.jpg

Någon som vet en möjlig förklaring till varför detta kan ha uppstått?

I övrigt så fungerar alla "windowsfunktioner" som de skall.

Kolla vad miljövariabeln PATH har för värde.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

Misstänker att du har tappat c:\windows\system32 från din path.

Starta cmd och skriv "path", så får du fram alla "snabbsökvägar". Om just den sökvägen inte finns med, så kan du lägga in den igen:

Om du har engelskt Windows, skriv "path" i sökfältet i startmenyn, så får du upp "Edit system environment variables". Kör igång den. Klicka på knappen "Environment Variables", scrolla ned till PATH i listan och lägg till c:\windows\system32

Glöm inte att separera sökvägarna med ;

Man kan tycka att det är lite underligt dock. Kanske har du installerat något program som oavsiktligt sabbat upp path (pga ett klantarsle till programmerare), eller så har någon uninstaller gjort något väldigt klantigt. Eller så har du råkat ut för någon skojig malware. Hoppas inte.

Eller så har du kanske lagt till ett startupscript som sabbar path?

Visa signatur

5950X, 3090

Permalänk
Medlem

Så här ser min PATH ut:

Är det inte så att den markerade raden i mitt fall representerar just "C:\Windows\System32" ?

Visa signatur

3570K @ de-lid @ 4.8 GHz | Sabertooth Z77 | 8GB-2133MHz-CL9 | ATi R9 290 @ 1150/1375
3x F60 RAID0 + 3TB WD Green
{@Custom H2O Loop}
Dell 3007WFP 2560x1600 BLANK AG removed+BLbleed mod | Z-5500 @ cap-mod
Garage Band komposition!

Permalänk
Medlem
Skrivet av Jekean:

Så här ser min PATH ut:

http://i60.tinypic.com/346ns6a.jpg

Är det inte så att den markerade raden i mitt fall representerar just "C:\Windows\System32" ?

Skulle tippa på att escapes helt inte funkar i path-variabeln. Rättare sagt så är det ju till synes så, för annars borde det ju fungera för dig.

Ta fram editorn jag nämnde och ändra %systemroot% till c:\windows

Själv har jag inga escapes i min path.

Edit: vad får du fram om du kör detta: echo %systemroot%

C:\Windows borde skrivas ut, annars är det SystemRoot-variabeln som fått punka.

Visa signatur

5950X, 3090

Permalänk
Medlem
Skrivet av backfeed:

Skulle tippa på att escapes helt inte funkar i path-variabeln. Rättare sagt så är det ju till synes så, för annars borde det ju fungera för dig.

Ta fram editorn jag nämnde och ändra %systemroot% till c:\windows

Själv har jag inga escapes i min path.

Man tackar.

Det löste problemet.

Är det vist att möjligen lägga in några egna sökvägar i listan för att eventuellt korta ner längd på egna batch filer i framtiden?

Visa signatur

3570K @ de-lid @ 4.8 GHz | Sabertooth Z77 | 8GB-2133MHz-CL9 | ATi R9 290 @ 1150/1375
3x F60 RAID0 + 3TB WD Green
{@Custom H2O Loop}
Dell 3007WFP 2560x1600 BLANK AG removed+BLbleed mod | Z-5500 @ cap-mod
Garage Band komposition!

Permalänk
Avstängd
Skrivet av backfeed:

Skulle tippa på att escapes helt inte funkar i path-variabeln. Rättare sagt så är det ju till synes så, för annars borde det ju fungera för dig.

Ta fram editorn jag nämnde och ändra %systemroot% till c:\windows

Själv har jag inga escapes i min path.

Edit: vad får du fram om du kör detta: echo %systemroot%

C:\Windows borde skrivas ut, annars är det SystemRoot-variabeln som fått punka.

Vän av ordning måste bara påpeka att det inte är escapes du menar, utan environment variables.

Tecknet ^ är escape character i windows command line.

echo ^%systemroot^%

Så escapar man %-tecknen, så miljövariabeln inte evalueras, så strängen skrivs ut istället för variabelns värde.

Permalänk
Medlem
Skrivet av nackskägg:

Vän av ordning måste bara påpeka att det inte är escapes du menar, utan environment variables.

Tecknet ^ är escape character i windows command line.

echo ^%systemroot^%

Så escapar man %-tecknen, så miljövariabeln inte evalueras, så strängen skrivs ut istället för variabelns värde.

Jepp, kom inte ihåg vad %-inkapsling för evaluering av miljövariabler kallas, så jag råkade ta fel ord.

Men % kan agera escape också, då escape av % även kan skrivas %%.

Visa signatur

5950X, 3090

Permalänk
Avstängd
Skrivet av backfeed:

Men % kan agera escape också, då escape av % även kan skrivas %%.

Inte då i windows 8 i alla fall.

Permalänk
Medlem
Skrivet av nackskägg:

Inte då i windows 8 i alla fall.

Edit: glöm det. Verkar för fasen inte alls funka. Du vinner.

Edit 2: det funkar, men bara i batchscript.

Edit 3: i batschscript funkar dessutom ^% dåligt (det måste skrivas inom citationstecken om man ska skriva ut med echo, annars får man felmeddelande), så %% är att rekommendera.

Visa signatur

5950X, 3090

Permalänk
Medlem

I Path ska variabla värden representeras på detta sätt ...;%SystemRoot%\System32\;... dvs %SystemRoot% är en variabel, om den skrivs med dubbla procenttecken så skriv dom ut som text. För att kontrollera värdet kan du redigera värdet Path permanent genom att högerklicka på Dator > Egenskaper -> Avancerade Systeminställningar -> Fliken Avancerat -> Miljövariabler -> Gruppen systemvariabler -> Värdet Path.

För att kontrollera att värdet %SystemRoot% är korrekt kan du kontrollera med set i CMD.

Visa signatur

Server: Fractal design Define 7 XL | AMD Ryzen 7 5800X 8/16 | ASUS ROG CROSSHAIR VIII DARK HERO | 64GB Corsair @ 3000MHz | ASUS Radeon RX 460 2GB | Samsung 960 PRO 512 GB M.2 | 2x 2TB Samsung 850 PRO SSD | 6x Seagate Ironwolf Pro 10TB
WS: Phantex Entoo Elite | AMD Ryzen Threadripper 1950X 16/32 | ASUS Zenith extreme | 128GB G.Skill @ 2400MHz | ASUS Radeon HD7970 | 3x 2TB Samsung 960PRO M.2 | 6x Seagate Ironwolf Pro 10 TB
NEC PA301W 30" @ 2560x1600 | Linux Mint 21.3 Cinnamon

Permalänk
Medlem
Skrivet av OldComputer:

I Path ska variabla värden representeras på detta sätt ...;%SystemRoot%\System32\;... dvs %SystemRoot% är en variabel, om den skrivs med dubbla procenttecken så skriv dom ut som text. För att kontrollera värdet kan du redigera värdet Path permanent genom att högerklicka på Dator > Egenskaper -> Avancerade Systeminställningar -> Fliken Avancerat -> Miljövariabler -> Gruppen systemvariabler -> Värdet Path.

För att kontrollera att värdet %SystemRoot% är korrekt kan du kontrollera med set i CMD.

Jo. Sannolikt har TS något underligt i SystemRoot-variabeln. Kanske har den tagits bort, eller tömts.

Visa signatur

5950X, 3090

Permalänk
Medlem
Skrivet av backfeed:

Ta fram editorn jag nämnde och ändra %systemroot% till c:\windows

jag skulle nog ändra till %windir% i stället för c:\windows

Visa signatur

Medlem #14

Permalänk
Medlem
Skrivet av JenzA:

jag skulle nog ändra till %windir% i stället för c:\windows

Kan det motiveras varför?

Visa signatur

3570K @ de-lid @ 4.8 GHz | Sabertooth Z77 | 8GB-2133MHz-CL9 | ATi R9 290 @ 1150/1375
3x F60 RAID0 + 3TB WD Green
{@Custom H2O Loop}
Dell 3007WFP 2560x1600 BLANK AG removed+BLbleed mod | Z-5500 @ cap-mod
Garage Band komposition!

Permalänk
Medlem
Skrivet av Jekean:

Kan det motiveras varför?

Tja, det är väl en standard.

%SystemRoot%
The %SystemRoot% variable is a special system-wide environment variable found on Microsoft Windows NT and its derivatives. Its value is the location of the system directory, including the drive and path. The drive is the same as %SystemDrive% and the default path on a clean installation depends upon the version of the operating system. By default, Windows NT 5.1 (Windows XP) and newer versions use \WINDOWS, Windows NT 5.0 (Windows 2000), Windows NT 4.0 and Windows NT 3.1 use \WINNT, Windows NT 3.5x uses \WINNT35, and Windows NT 4.0 Terminal Server uses \WTSRV

%windir%
This variable points to the Windows directory (on Windows NT-based operating systems it is identical to the %SystemRoot% variable, above). If the System is on drive C: then the default values are C:\WINDOWS on Windows 95, Windows 98, Windows Me, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 and Windows 7 and C:\WINNT for Windows NT 4, and Windows 2000. Windows NT 4 Terminal Server Edition by default installs to C:\WTSRV.

http://en.wikipedia.org/wiki/Environment_variable#Microsoft_W...

Visa signatur

Medlem #14