- PATH_TEMP=$(mktemp /tmp/selector-cd-path.XXXXXX)
- selector -j -y -u -t "cd" -l 1000 -d -i -c 7,2,0,3 -o ${PATH_TEMP} -q ${SELECTOR_CD_HISTORY}
- NEW_PATH="$(cat ${PATH_TEMP} | sed -e 's!~!'${HOME}'!')"
- if [[ -s "${NEW_PATH}" ]]; then
- selector-cd "$(cat ${PATH_TEMP} | sed -e 's!^~!'${HOME}'!')"
+ local UMASK=$(umask)
+ umask 077
+
+ if [[ -f "${SELECTOR_CD_HISTORY}" ]]; then
+ PATH_TEMP=$(mktemp /tmp/selector-cd-path.XXXXXX)
+ selector -j -y -u -t "cd" -l "${SELECTOR_CD_HISTORY_SIZE}" -d -i -c 7,2,0,3 -o "${PATH_TEMP}" -q "${SELECTOR_CD_HISTORY}"
+ NEW_PATH="$(cat "${PATH_TEMP}" | sed -e 's!~!'${HOME}'!')"
+ if [[ -d "${NEW_PATH}" ]]; then
+ selector-cd "$(cat "${PATH_TEMP}" | sed -e 's!^~!'${HOME}'!')"
+ fi
+ \rm "${PATH_TEMP}"
+ else
+ echo "No cd history file '${SELECTOR_CD_HISTORY}'." >&2