每当我想在终端执行 .cpp 时,我必须在它前面写上 ./。
我想将这个“./”改为其他内容。
我在另一个帖子中发现了这一点:
cr(){
if [ "$#" -ne 1 ]; then
echo "Usage: cr <file.cpp>"
else
name=$(echo $1 | cut -f 1 -d '.')
g++ $1 -o name; ./name
fi
}
它运行良好,但问题是我想将它与 -DLOCAL 和其他一些标志一起使用,我该如何让它工作?
因为现在我正在使用带有一些模板的 sublime text,并且那些(模板)需要标志来在终端中显示值。
并且是否有办法让它工作而不用每次都写 .cpp 扩展名
(ex : cr A.cpp in cr A)
谢谢 !
编辑:设法使标志正常工作,但是,有没有办法在运行快捷方式时不写入.cpp?
答案1
该命令make A
将编译并链接A.cpp
使用默认规则g++ A.cpp -o A
例如给定
$ cat > A.cpp
#include <iostream>
int main(void) { std::cout << "Hello world" << std::endl; return 0; }
然后
$ make A
g++ A.cpp -o A
$ ./A
Hello world