系统是 macOS 。
vscode 里写 Makefile 脚本:
include .env
clean:
@rm -Rf ./data/mysql
@rm -Rf $(MYSQL_DUMPS_DIR)/*
@rm -Rf ./web
@rm -Rf ./log
@rm -Rf ./etc/ssl/*
.env 文件:
MYSQL_DUMPS_DIR=data/backup #数据库备份文件目录
结果,执行 make clean
后控制台提示:
rm: /Applications/Utilities/Adobe Creative Cloud Experience/CCXProcess.app/Contents/Resources/panels/com.adobe.ccx.start-2.2.1/Contents/js/locales/eo.bundle.js: Permission denied
我才知道完蛋了。。。赶紧 Ctrl+C ,软件没了大半。。。
正在运行的 vscode 跟浏览器都给我删完了,真神奇。。。
我又写了个 printf 测试
aaa:
@printf $(MYSQL_DUMPS_DIR)/*
执行结果一点问题没有:
dt27@DT27-RMBP oa % make aaa
./data/backup%
我不理解。。。 .env 里的变量删掉执行结果:
dt27@DT27-RMBP oa % make aaa
/Applications%
最后发现是 MYSQL_DUMPS_DIR=data/backup #数据库备份文件目录
备注前的空格惹的祸。。。
printf "$(MYSQL_DUMPS_DIR)/*"
#前不带空格
dt27@DT27-RMBP oa % make aaa
data/backup/*% ```
#前带空格
dt27@DT27-RMBP oa % make aaa
data/backup /*%
1
Wvg9eBo3U0c8BLd2 11 天前
这就是时间机器的重要性了, 每天都会自动备份一次. 使用 mac 以来 ,从来没有丢过文件, 给足后悔的机会.
|
![]() |
2
DT27 OP |
3
Wvg9eBo3U0c8BLd2 11 天前
@DT27 #2 买个 NAS, 插 USB 也太不优雅了
|
![]() |
4
DT27 OP @lolita89201 NAS 有,但是电脑好久没出问题了,根本没想到要备份😂
已经安排上了~~~ |
![]() |
5
DT27 OP |
![]() |
6
june4 11 天前
你这么写这个删除命令本来看着就很吓人,删除的根目录都是动态的
|
![]() |
8
newaccount 11 天前
还有一点,# 开头的注释不要放在行尾使用
你不知道哪个玩意就坑你一下 |
![]() |
9
dallaslu 11 天前
非常好的分享。也可以平时多攒几个 node_modules 目录,哈哈
|
![]() |
10
DT27 OP @newaccount 写代码注释习惯了= =、没想到到这不一样
|