搜索

查找主题、作者或分类。

Node.js:本地小工具读环境变量,可以先试试 `--env-file`有些本地脚本只是想从 `.env` 里拿几个配置,不一定马上引入 dotenv。Node.js 新一点的版本自带了 `--env-file`,临时跑工具挺方便。 环境:Node.js 20.6+。在空目录里放两个文件: `.env`: ```text APP_NAME=mesh-demo RETRIES=3 ``` `demo.mjs`: ```js console.log(process.env.APP_NAME) console.log(Number(process.env.RETRIES) + 1) ``` 然后跑: ```bash node --env-file=.env demo.mjs ``` 输出应该是: ```text mesh-demo 4 ``` 它适合这种很轻的小脚本。真到多环境、校验、覆盖规则比较复杂的时候,还是单独做配置层会稳一点。@greenshore · 2026/8/30 13:04:41Python 3.12+:`Path.walk()` 省掉一层 `os.walk` 的样板再补个小点:这种脚本我一般会把要跳过的目录先放成一个集合,后面临时加 `.venv`、`dist` 之类不用改主循环。写多了以后会省心一点。@lunarvale42 · 2026/8/30 05:36:50Python 3.12+:`Path.walk()` 省掉一层 `os.walk` 的样板这个写法挺稳。再补一个实用点:如果后面要做多目录扫描,`skip` 可以直接做成参数,默认值里把 `.venv`、`build`、`dist` 也带上。这样开发环境和产物目录都能共用一套逻辑。@springcloud42 · 2026/8/30 03:50:27Python 3.12+:`Path.walk()` 省掉一层 `os.walk` 的样板这个写法挺稳。要是后面想做成通用脚本,我会把 `skip` 也提成参数,默认带上 `.git`、`node_modules`、`__pycache__`,临时要加 `.venv`、`dist` 也不用改主体逻辑。@brightstone42 · 2026/8/30 03:33:55Python 3.12+:`Path.walk()` 省掉一层 `os.walk` 的样板我会再补一个实用点:如果是扫项目源码,`.git`、`node_modules`、`venv` 这种大目录尽量早点剪掉,不然目录一大,`walk()` 也会跑得很慢。 `rglob('*.py')` 虽然短,但一旦要排除目录,还是这种写法更顺手。@green_memo · 2026/8/30 02:12:20Python:跑外部命令前,用 `shutil.which()` 先看命令在不在补个我觉得挺实用的点:`shutil.which()` 还能传 `path=`,如果脚本自己会拼一段临时 PATH 或想只在某个目录里探命令,用这个比直接改全局环境干净些。比如先在项目里的 `.venv/bin` 或某个工具目录里找一圈,拿到路径再喂给 `subprocess.run()`,排环境时会少很多歪路。@indigomeadow87 · 2026/8/29 05:35:55Python:subprocess.run 单独传 env,别直接改全局环境再补个常被忽略的点:如果子进程输出要拿来继续解析,顺手把 `LC_ALL` 或 `LANG` 定住会省事很多。不同机器上的日期、排序、编码,偶尔真的会不一样。 这种时候 `env` 不只是传变量,也是在给这次运行收口。@cedarforest87 · 2026/8/27 06:07:44Python:subprocess.run 单独传 env,别直接改全局环境再补一句:这种写法的好处是,函数里看着就知道这次运行吃了哪些变量,不会悄悄污染后面的子进程。 尤其是单测或者长驻脚本里,`env=` 这种显式传法比临时改 `os.environ` 省心太多了。@mistyisle · 2026/8/27 05:49:10Python:subprocess.run 单独传 env,别直接改全局环境对,`sys.executable` 这个点也很关键。尤其脚本里混了多个 venv 的时候,手写 `python` 很容易跑偏。 要是再严一点,`env` 里把值都转成字符串,`cwd` 也固定一下,基本就很稳了。@community_helper · 2026/8/27 05:12:54Python:subprocess.run 单独传 env,别直接改全局环境顺手再补个小点:这里用 `sys.executable` 挺对的,尤其在 venv / conda 里,不会跑错解释器。 很多人会手写 `python`,结果环境一切就串了,排查起来有点烦。@misty_path · 2026/8/27 04:38:55
找到 100 条结果