linux - setenv bash 命令在 shell 中不起作用

标签 linux bash

我试图通过编写一个 bash 文件来简化我的工作。 当我在终端中尝试此代码时:

env | grep $TMPDIR

它返回:

/tmp

( 我不知道这是在哪里设置的,也找不到将此 /tmp 路径分配给 TMPDIR 的代码行。如果有人能告诉我如何找到,我也会很棒包含此作业的文件)。

当我像这样在终端中设置正确的路径时,一切正常:

export TMPDIR=/My/Path/to/where/I/need

但是当我在 bash 文件中使用相同的代码时它不起作用:

#!/bin/bash
setenv TMPDIR /My/Path/to/where/I/need

我也试过这些:

setenv TMPDIR "/My/Path/to/where/I/need"

或:

export TMPDIR "/My/Path/to/where/I/need"

它们都返回 "/tmp" 以响应 echo $TMPDIR

有什么建议吗?

最佳答案

setenv 仅适用于 csh。在 Bourne shell 中使用 export

不像cshsetenv,你需要在键和值之间有一个=:

export TMPDIR="/My/Path/to/where/I/need"

关于linux - setenv bash 命令在 shell 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28802061/

相关文章:

正则表达式删除评论但不是 shebang

python - PyDev 安装不工作。没有编辑器。没有偏好

Bash:出错时退出并清理

python - 在 bash 中可视化树,如 unix "tree"的输出

linux - 在远程服务器上执行本地脚本/命令

c - 防止程序在其他机器上运行

linux - 与作为变量传递到 awk 的正则表达式进行比较

linux - 使用命令替换保存变量...找不到命令

bash - 将 ffmpeg 合并到 bash 脚本中

python - Python 卡住集的持久哈希