Tente:
ECHO %PATHEXT%
SET PATHEXT=%PATHEXT%;.LNK
C:\Program Files (x86)\
é terrível, por isso tenho um diretório C:\Users\Braden\Programs\bin
que está na variável de ambiente %PATH%
. Este diretório é conceitualmente equivalente a /usr/local/bin
em um sistema * NIX. Ou seja Um único lugar onde posso jogar executáveis onde eu posso executá-los apenas digitando seus nomes (seja em um cmd.exe
shell ou em um Run...
). Ele funciona bem para executáveis em formato PE*
e scripts em lote, mas estranhamente não para atalhos.
Tome o VLC, por exemplo. Eu tenho um atalho para VLC chamado vlc.lnk
, que, como eu entendo, é suposto ser o equivalente de um hard link
. Eu tenho que digitar vlc.lnk
, não vlc
, para fazê-lo executar o programa. Eu acho isso ridículo.
Existe alguma maneira de fazer com que a linha de comando trate um .lnk
da mesma maneira que um .bat
ou .exe
, onde eu posso apenas digitar o nome do arquivo sem a extensão? De preferência sem instalar um programa externo.
Durante o assunto, é possível fazer o mesmo com qualquer arquivo arbitrário, como, digamos, um arquivo .bash
ou .sh
? Eu poderia ficar totalmente atrás de um script wrapper escrito em bash.
Tags command-line windows cmd.exe