![如何在 unix 中设置 $ 变量?](https://linux22.com/image/1233152/%E5%A6%82%E4%BD%95%E5%9C%A8%20unix%20%E4%B8%AD%E8%AE%BE%E7%BD%AE%20%24%20%E5%8F%98%E9%87%8F%EF%BC%9F.png)
例如,有一条我cd
经常要走的长路。我该如何将该路存储在变量中以便每次都能使用它?
例如:我希望能够做到这一点
cd $path
代替
cd /a/b/c/d/e/f
每次。
答案1
假设你真的想要 csh/tcsh 语法(正如你标记的问题一样),把这个
setenv P1 "/a/b/c/d/e/f"
到你的 .tcshrc
之后你就可以做
cd $P1
答案2
在 Bash shell 中:
export FOO="/a/b/c"
你呢不想要使用 $path。这是一个特殊变量。
答案3
您不太可能需要环境中的变量。
因此,在 csh 中setenv
,您可以执行以下操作:
set dir="/a/b/c/d/e/f"
cd $dir
或者在 Bash 中,而不是export
:
dir="/a/b/c/d/e/f"
cd $dir
答案4
如果您只想在一个会话中使用该路径,请照常设置变量
set long="/some/long/path/to/a/directory"
然后您可以cd "$long"
随意更改次数,直到 shell 终止或者您long
再次设置。
如果你对从 shell 会话运行的进程可用的变量感兴趣,你应该在你的环境中设置它
setenv long "/some/long/path/to/a/directory"
如果您希望变量对每个会话都可用,而不仅仅是当前会话,那么您需要在 shell 运行控制中设置它。
$EDITOR ~/.cshrc
然后添加该set
行或setenv
上面显示的行,为 csh 的每个会话自动设置变量或环境变量。