我想创建alias
一个运行程序。我的别名如下:alias cc=g++ -Wall -Wextra $1 -o $1
。这样我就可以写入cc app.cpp
,命令将是g++ -Wall -Wextra app.cpp -o app.exe
然而,存在一个问题。
$1
给出带扩展名的文件名,但我只需要文件名。有解决方法吗?doskey
并且ConEmu
没有不带扩展名的文件名的变量。例如,for
在 中有一个这样的变量cmd.exe
。它是%A
。
答案1
这其实很简单,因为@Ƭᴇcʜιᴇ007 提供了有用的链接。只需创建一个 bat 文件并粘贴以下内容:
@echo off
SETLOCAL
for %%i in (%1) do (set filename=%%~ni)
g++ -Wall -Wextra %1 -o %filename%.exe
经过测试并且运行良好。