Gói cd, một lệnh hiện có, không được khuyến khích. 
Một giải pháp phổ quát hơn sẽ là xác định một chpwdmóc tùy chỉnh trong Bash. (Theo các thẻ của câu hỏi này, tôi giả sử bạn đang sử dụng Bash)
Không có một hệ thống móc hoàn chỉnh nào được thiết kế ở Bash khi so sánh với các loại đạn pháo hiện đại khác. PROMPT_COMMANDbiến được sử dụng như một hàm hook, tương đương với precmdhook trong ZSH, fish_prompttrong Fish. Hiện tại, ZSH là lớp vỏ duy nhất tôi biết có tích hợp chpwdmóc.
  PROMPT_COMMAND
  
  Nếu được đặt, giá trị được hiểu là một lệnh để thực thi trước khi in từng dấu nhắc chính ($ PS1).
  
  https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html#Bash-Variabled
chpwd Móc ở Bash
Một mẹo được cung cấp để thiết lập một chpwdhook tương đương trong Bash dựa trên PROMPT_COMMAND.
# create a PROPMT_COMMAND equivalent to store chpwd functions
typeset -g CHPWD_COMMAND=""
_chpwd_hook() {
  shopt -s nullglob
  local f
  # run commands in CHPWD_COMMAND variable on dir change
  if [[ "$PREVPWD" != "$PWD" ]]; then
    local IFS=$';'
    for f in $CHPWD_COMMAND; do
      "$f"
    done
    unset IFS
  fi
  # refresh last working dir record
  export PREVPWD="$PWD"
}
# add `;` after _chpwd_hook if PROMPT_COMMAND is not empty
PROMPT_COMMAND="_chpwd_hook${PROMPT_COMMAND:+;$PROMPT_COMMAND}"
Kể từ khi chúng tôi phát hiện PWDsự thay đổi trực tiếp, giải pháp làm việc với cd, pushdvà popd.
Lưu ý : Sự khác biệt chính giữa chpwdtriển khai của chúng tôi trong Bash và chpwdtrong ZSH là, PROMPT_COMMANDkhông được hỗ trợ trong trình bao Bash không tương tác.
Sử dụng
_public_html_action() {
  if [[ $PWD == */public_html ]]; then
    # actions
  fi
}
# append the command into CHPWD_COMMAND
CHPWD_COMMAND="${CHPWD_COMMAND:+$CHPWD_COMMAND;}_public_html_action"
Nguồn: Tạo chpwd Hook Equivalent Hook trong Bash từ ý chính của tôi.
Đối với bất cứ ai muốn một câu trả lời cho ZSH. Sử dụng chpwdmóc trong ZSH. Đừng xác định chpwd()chức năng trực tiếp.  Chi tiết hơn ở đây .
               
              
echo "Testing..."ngay phía trên if, nhưng thông báo đầu ra. Tôi có cần làm gì để áp dụng những thay đổi này không?