こんにちは、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を使ったスクリプトは有害とみなされる、可能であれば他の最新のシェルに切り替えます(そこでも現代的な形式のコマンド置換を使用したいと思います$(...)
)。