在cshell脚本中获取父目录

在cshell脚本中获取父目录

您好,我正在尝试在 cshell 脚本中获取父目录,但发现以下代码在 cshell 脚本中不起作用:

#!/bin/csh -f 
set dir=$PWD
set parentdir="$(dirname "$dir")"

错误信息:

Illegal variable name.

答案1

(t)csh仅支持旧形式的命令替换:

$ set dir=$PWD
$ set parentdir=`dirname "$dir"`
$ printf '%s\n' "$parentdir"
/home

使用 csh 编写脚本是被认为有害,如果可以的话,切换到其他现代 shell(即使在那里,您也想使用现代形式的命令替换$(...))。

相关内容