MC v Debian Woody

Jirka Kosina jikos na jikos.cz
Čtvrtek Leden 23 00:36:22 CET 2003


On Thu, 23 Jan 2003, Pavel Kankovsky wrote:

> Narozdil od MS DOSu je v unixovych systemech efekt syscallu chdir() omezen
> na ten proces, ktery toto volani provedl (linuxove-specificka kouzla
> s clone() ponechme stranou). Cili MC si muze menit svuj cwd, jak se mu
> zlibi, ale shellu (ci jineho procesu), ze ktereho byl spusten, se to nijak
> nedotkne.

A pokud by se nekdo po precteni tohoto prispevku podivil, jaktoze tedy
napriklad v RedHatu zustava aktualni adresar po vypnuti mc takovy, jaky
byl posledni aktualni adresar v mc, tak nech vezi, ze jest definovana
funkce mc() (v bashi), ktera vypada takto:

mc=()
{
    mkdir -p $HOME/.mc/tmp 2>/dev/null;
    chmod 700 $HOME/.mc/tmp;
    MC=$HOME/.mc/tmp/mc-$$;
    /usr/bin/mc -P "$@" >"$MC";
    cd "`cat $MC`";
    rm -f "$MC";
    unset MC
}

Tedy vyuziva toho, ze mc umi zapsat pred skoncenim do souboru posledni
aktualni adresar, a shell pak do tohto adresare provede cd.

--
JiKos.


Další informace o konferenci Linux