Още от времето на DOS любима патерица ми беше една програма XTree. Оказа се, че я има и за Unix. Покрай XTree-то често използвах и Norton Commander (нали знаете лафа: “Гледам аз: отдясно диск “C”, и отляво диск “C”. И за какво ли са ми два еднакви?! Я, да взема да изтрия единият….) не защото ми харесваше, ами защото колегите не излизаха от него по цял ден и просто нямах избор – трябваше да свиквам. Всъщност, подобни програми в последствие се превръщат от патерици в инвалидни колични, било заради удобството, което предлагат, било заради чисто човешкият мързал да се използва нещо друго. Затова и аз, често използвам в конзола при x-образните ОС Midnight Commander-a – свободният проект, почти пълен аналог на досовският си дядо.Традиционно Midnight Commander-a в RedHat базираните ОС може да се използва за бърза смяна между директориите – особено, ако в единият панел покажете дървото на директориите. Незнайно защо, тази функция при Debian клоновете е точно обратното – там mc-то се връща точно оттам, откъдето е извикано. Това поведение, лично мен не ми допада, затова на всяка (Debian like) машина на която работя правя следното:
vi ~/.bashsrc
и добавям в краят на файла (или в секция alias)
alias mc=’. /usr/share/mc/bin/mc-wrapper.sh’ или
или за по-мързеливите, всичко на един ред:
echo alias mc=’. /usr/share/mc/bin/mc-wrapper.sh’ >> ~/.bashrc
За тази “магия” стои параметърът “-P” на mc-то за запомняне на текущата директория във външен файл. Ето и какво точно прави тази опаковка mc-wrapper.sh:
MC_USER=`id | sed ‘s/[^(]*(//;s/).*//’`
MC_PWD_FILE=”${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$”
/usr/bin/mc -P “$MC_PWD_FILE” “$@”
if test -r “$MC_PWD_FILE”; then
MC_PWD=”`cat $MC_PWD_FILE`”
if test -n “$MC_PWD” && test -d “$MC_PWD”; then
cd “$MC_PWD”
fi
unset MC_PWD
fi
rm -f “$MC_PWD_FILE”
unset MC_PWD_FILE
ВНИМАВАЙТЕ, ако правите Copy&Paste от екраните по-горе. Темите на шрифтовете понякога сменят апострофи и кавички или обратен апостроф, с каквото те си решат.
Допълнителни ресурси: User Guide и FAQ.