Я просто думаю, что мне удобно «cd» в каталог, где я храню некоторый файл, т.е.Настроить «cd» в bash
[[email protected] /]$ cd /usr/bin/somefile.pl
, насколько я знаю, что официальная команда «cd» не будет работать.
, так что я написал что-то вроде этого:
main() {
if [[ "${1}" =~ "(.+/)*(.*){1}" ]] && [ -f "${1}" ] ; then
`\cd ${1%/*}`
elif [ -f "${1}" ] ; then
exit 0
else ; `\cd ${1}`
fi
}
main ${1}
и я псевдоним этого cd.sh к команде "CD":
alias cd='source /somepath/cd.sh'
и это не работает.
Я пытался использовать eval "\cd xxx"
вместо \cd xxx
;
Как исправить мой сценарий?
Чувак, это сладкая идея. Но, пожалуйста, используйте 'basename' для управления путями, а не регулярными выражениями. –
, потому что когда-то я просто хочу посмотреть, какие файлы хранятся с файлом, я смотрю на lol, когда я знаю путь абзаца этого файла. –