Я делаю это слишком часто:
$ pwd /a/long/long/way/from/anywhere $ cd # oops - meant to tab-complete something /home/$USER
Жестяная банка cd
по умолчанию $ HOME отключить?
Я могу придумать два варианта:
вы можете написать alias
по умолчанию cd
без аргументов ни к чему. Это относится к использованию таких утилит, как cdargs
или apparix
. Лично я использовал этот cd
замена довольно давно.
патч bash
вести себя иначе (bash-4.2/builtins/cd.def
). Не уверен, что изменение этого значения по умолчанию нарушает другие вещи.
228 if (list == 0)
229 {
230 /* `cd' without arguments is equivalent to `cd $HOME' */
231 dirname = get_string_value ("HOME");
232
233 if (dirname == 0)
234 {
235 builtin_error (_("HOME not set"));
236 return (EXECUTION_FAILURE);
237 }
238 lflag = 0;
239 }
В bash, если вы случайно перешли не в тот каталог, вы можете вернуться в предыдущий каталог с помощью:
cd $OLDPWD
Этот псевдоним, кажется, делает это:
псевдоним cd = 'HOME = cd'
Я не считать у него есть опасные побочные эффекты ...