Bash 脚本返回一个目录

use*_*290 6 bash shell

我可以得到我当前的工作目录

my_dir=$(pwd)
echo $my_dir
/files/work/test
Run Code Online (Sandbox Code Playgroud)

我怎么知道/files/work 我不想更改目录。我只需要获取/files/work目录。

mic*_*ckp 6

尝试其中之一(假设您没有手动更改$PWD):

  1. echo "${PWD%/*}"
    
    Run Code Online (Sandbox Code Playgroud)
  2. dirname "$PWD"    
    
    Run Code Online (Sandbox Code Playgroud)
  3. (cd .. && pwd)
    
    Run Code Online (Sandbox Code Playgroud)


小智 3

echo `dirname \`pwd\``
Run Code Online (Sandbox Code Playgroud)

它将产生当前工作目录的父目录

  • 不需要 `echo`,并且 `$(...)` 比反引号更受欢迎。`目录名“$(pwd)”`。 (6认同)