您好,我正在尝试在 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(即使在那里,您也想使用现代形式的命令替换$(...)
)。