http://www.mail-archive.com/mutt-users@mutt.org/msg44341.html
Это предлагает использовать 'pager_format', заставить его показать дату буквы в локальном часовом поясе:
набор pager_format = "% 4C %Z % [! %b %e в %I: % M %p] %.20n %s %* - (%P)"
Что-то как следующее должно работать:
setdir() {
cd "$1"
export SETDIR_DEFAULT="$1"
}
my_cd() {
cd "${1-${SETDIR_DEFAULT-$HOME}}"
}
Обратите внимание, что это функции, не отдельный сценарий. Вы не можете сделать этого из отдельного сценария, так как он не смог бы влиять на родительскую оболочку, которая называет его.
Если Вы действительно хотите переопределить cd
(не делайте этого), замена cd
с builtin cd
.
Я знаю, что ответ может быть немного запоздалым, но вам может понравиться идея CDPATH
vaiable. Это позволяет cd
обращаться к содержимому каталогов в этой переменной откуда угодно. Вот пример:
$ mkdir -p test/{1,2,3}
$ cd test/
$ mkdir 1/{a,b,c}
$ export CDPATH=/tmp/test/1
$ ls
1 2 3
$ cd a
$ pwd
/tmp/test/1/a
$ cd ~
$ cd b
$ pwd
/tmp/test/1/b
Подробнее см.man
:
CDPATH A <colon>-separated list of pathnames
that refer to directories. The cd utility
shall use this list in its attempt to change
the directory, as described in the DESCRIPTION.
An empty string in place of a directory
pathname represents the current directory. If
CDPATH is not set, it shall be treated as if
it were an empty string.