如何检索路径名的一部分并将其分配给变量?

如何检索路径名的一部分并将其分配给变量?

我想将当前工作目录路径名的一部分分配给一个变量,并在目录本身内的脚本中使用它。

例如:

如果我的密码是:

/home/desktop/project/ABC/abc/abc_123,是否有命令将 ABC 分配给变量,例如 $PROJECT_NAME?

我试过目录名,但它似乎正在回归'' 对于输入 'pwd',无论如何我需要比 dirname 应该返回的内容再落后一步。

答案1

由于您使用以下标记tcsh

set project = $cwd:h:h:t:q

将设置$project为当前目录的头部的尾部(或目录名的目录名的基本名称)。:q 引号生成的文本,因此不会对其进行进一步的扩展(如拆分或通配符)。

pwd是打印当前工作目录的命令。该命令不是内置的tcsh。当前工作目录(毫不奇怪,或者至少与ksh's相比$PWD)位于$cwd变量 in中tcsh

相关内容