我使用 ranger 作为文件管理器,正在寻找一个可以传递给 ranger 的选项,让我可以在给定目录中打开 ranger,类似ranger —specfic-directory=„/home/tim/literature/„
或类似的东西。ranger —help
和手册页都没有提供答案,至少没有我理解的答案。 我无法想象这样的选项不存在!
答案1
你可以ranger /home/Louis/whatever
无需任何参数即可正常工作
答案2
您可以执行ranger --cmd='cd ~/Desktop'
答案3
如果您想在每次打开 Ranger 时设置默认目录,而不管终端打开的目录如何,
将这一行添加到你的 .bashrc 或你正在使用的任何相应的 shell 中
alias ranger="ranger path/to/your/directory"
答案4
在给定目录打开 ranger
我不是此功能的作者,是我几年前在某个我不记得的地方创建的。将它放在你的.aliases
主目录中,用于两者zsh
或bash
其他任何用途。
##################################################
# This function is working with ranger
# using Capital (Q) to exit ranger to
# the last specified directory in ranger.
##################################################
function ranger-cd {
local IFS=$'\t\n'
local tempfile="$(mktemp -t tmp.XXXXXX)"
local ranger_cmd=(
command
ranger
--cmd="map Q chain shell echo %d > "$tempfile"; quitall"
)
${ranger_cmd[@]} "$@"
if [[ -f "$tempfile" ]] && [[ "$(cat -- "$tempfile")" != "$(echo -n `pwd`)" ]]; then
cd -- "$(cat "$tempfile")" || return
fi
command rm -f -- "$tempfile" 2>/dev/null
}
alias ranger=ranger-cd
如何使用
- 在 Ranger 中导航时,使用大写 (Q) 键绑定退出 Ranger,它将在最后导航的目录中退出。请注意,这
alias ranger=ranger-cd
也必须添加到您的.aliases
文件中。