我只想实现以下声明
"if bin folder is not available in current directory then make new bin folder &
if bin folder is available then its do nothing"
任何人都可以告诉我我该怎么做?
编辑: 我不想要任何错误,如
mkdir: cannot create directory `./bin `./bin': File exists
答案 0 :(得分:5)
你可以这样做:
-mkdir ./bin
如果./bin
已经存在,则mkdir
将无提示失败,否则将创建该目录。
答案 1 :(得分:2)
使用如下规则:
bin:
mkdir bin
然后,不要将mkdir bin
写为其他规则的一部分,而是让它们依赖于bin
规则。仅当bin
不存在时才会执行bin
规则。
答案 2 :(得分:1)
根据您的要求,您可以按如下方式使用规则:
bindir:
if [ ! -d bin ];then \
mkdir bin; \
fi
请注意,如果语句检查makefile所在的当前目录中是否存在名为bin的目录,如果名为bin的目录不存在,那么它将创建它,如果它存在则不执行任何操作,但是如果有常规文件如果存在名称为bin的(不是目录),则此规则将失败。 建议你使用一个变量说BINDIR来存储你的“bin”目录的值,因为这是遵循的一般规范,它有利于makefile的维护。
BINDIR:=bin
bindir:
if [ ! -d $(BINDIR) ];then \
mkdir $(BINDIR); \
fi