尝试从另一个文件的第一行进入目录

尝试从另一个文件的第一行进入目录

目前在工作场所使用 csh。

所以我现在拥有的是存储在文件第一行的路径,我正在尝试读取它。

head -n 1 jvar.txt 

现在我必须去那条路径,所以我试图将其存储在一个变量中

set a = head -n 1 jvar.txt

但无法将其存储在非法变量名中。想法是执行 cd $a 并转到该路径。有什么方法可以将其存储到某个位置,以便我可以 cd 到该路径。

答案1

要将 head 命令的输出捕获到可以分配给变量的字符串中,您需要命令替换

在 中csh,这是通过将命令括在反引号中来完成的:

set a = `head -1 jvar.txt`        # csh

反引号语法在 中也有效bash,但已被弃用,取而代之的是$(...)。还请注意,在 bash 和类似的 Bourne/Korn 派生 shell 中,在运算符周围包含空格是错误的=

a=$(head -1 jvar.txt)             # bash, ksh, sh etc.

相关内容