在为上下文菜单编写 shell 命令时如何仅获取文件的扩展名

LRR*_*LRR 3 windows command-line

例如,如果键入,cmd.exe echo %1它会显示所选文件的文件名和扩展名。但我想做的只是单独获取所选文件的扩展名。

有人知道怎么做吗?

nix*_*xda 5

cmd.exe echo %~x1

%*      return the remainder of the command line starting at the first command line   argument (in Windows NT 4, %* also includes all leading spaces)
%~dn    return the drive letter of %n (n can range from 0 to 9) if %n is a valid path or file name (no UNC)  
%~pn    return the directory of %n if %n is a valid path or file name (no UNC)  
%~nn    return the file name only of %n if %n is a valid file name  
%~xn    return the file extension only of %n if %n is a valid file name  
%~fn    return the fully qualified path of %n if %n is a valid file name or directory 
Run Code Online (Sandbox Code Playgroud)

来源