summaryrefslogtreecommitdiffstats
path: root/source/ap/mc/profile.d/mc-wrapper.csh
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/mc/profile.d/mc-wrapper.csh')
-rwxr-xr-xsource/ap/mc/profile.d/mc-wrapper.csh20
1 files changed, 20 insertions, 0 deletions
diff --git a/source/ap/mc/profile.d/mc-wrapper.csh b/source/ap/mc/profile.d/mc-wrapper.csh
new file mode 100755
index 000000000..7b4c383d9
--- /dev/null
+++ b/source/ap/mc/profile.d/mc-wrapper.csh
@@ -0,0 +1,20 @@
+set MC_USER="`id | sed 's/[^(]*(//;s/).*//'`"
+
+if ($?TMPDIR) then
+ setenv MC_PWD_FILE $TMPDIR/mc-$MC_USER/mc.pwd.$$
+else
+ setenv MC_PWD_FILE /tmp/mc-$MC_USER/mc.pwd.$$
+endif
+
+/usr/bin/mc -P "$MC_PWD_FILE" $*
+
+if (-r "$MC_PWD_FILE") then
+ setenv MC_PWD "`cat '$MC_PWD_FILE'`"
+ if ( -d "$MC_PWD" ) then
+ cd "$MC_PWD"
+ endif
+ unsetenv MC_PWD
+endif
+
+rm -f "$MC_PWD_FILE"
+unsetenv MC_PWD_FILE