在C Shell中执行脚本时获取脚本路径
我有一个脚本env.csh。我可以从任何地方找到它,不管它在哪里在C Shell中执行脚本时获取脚本路径,shell,unix,csh,Shell,Unix,Csh,我有一个脚本env.csh。我可以从任何地方找到它,不管它在哪里 File Path : /tmp/dump/env.csh Run Path : /usr Command : source /tmp/dump/env.csh 如何在从/folder usr获取env.csh时获取文件路径 我用了这个脚本 set SCRIPT=`readlink -f "$0"` set SCRIPTPATH=`dirname "$SCRIPT"`
File Path : /tmp/dump/env.csh
Run Path : /usr
Command : source /tmp/dump/env.csh
如何在从/folder usr获取env.csh时获取文件路径
我用了这个脚本
set SCRIPT=`readlink -f "$0"`
set SCRIPTPATH=`dirname "$SCRIPT"`
echo $SCRIPTPATH
但它是给定路径as/usr
如果文件名为
env.csh
set called=($_)
set script_fn=`readlink -f $called[2]`
echo $script_fn
set script_dir = `dirname "$script_fn"`
echo $script_dir
set scriptpath=`find /proc/$$/fd -type l -lname '*env.csh' -printf '%l' + | xargs dirname`
echo $scriptpath
另请参见和。您的问题有点不清楚,请您澄清“sourcing env.csh”是什么意思,您是指“source env.csh”?是的,其source env.csh在这种情况下,请参见: