Linux 如何使用shell命令导航到单个子目录而不知道其名称?

Linux 如何使用shell命令导航到单个子目录而不知道其名称?,linux,bash,Linux,Bash,我需要使用runCommand()方法从JAVA代码在远程机器上运行脚本。现在我不能总是知道脚本的完整路径,因为一个特定的目录名一直在变化。例如,路径如下所示:/a/b/xxxxx/scriptxxxx是不断更改的目录名,它是/a/b/下唯一的一个目录。是否有任何shell命令可用于获取目录名?我知道使用JAVA,但我特别需要shell命令。下面应该给出目录“b”中的目录名 如果您确信/a/b中始终只有一个目录,那么只需将find的输出存储在一个变量中,然后继续 注意:2>/dev/null只是

我需要使用runCommand()方法从JAVA代码在远程机器上运行脚本。现在我不能总是知道脚本的完整路径,因为一个特定的目录名一直在变化。例如,路径如下所示:/a/b/xxxxx/scriptxxxx是不断更改的目录名,它是/a/b/下唯一的一个目录。是否有任何shell命令可用于获取目录名?我知道使用JAVA,但我特别需要shell命令。

下面应该给出目录“b”中的目录名

如果您确信/a/b中始终只有一个目录,那么只需将find的输出存储在一个变量中,然后继续


注意:2>/dev/null只是为了消除错误警告。

下面应该给出目录“b”中的目录名

如果您确信/a/b中始终只有一个目录,那么只需将find的输出存储在一个变量中,然后继续


注意:2>/dev/null只是为了消除错误警告。

如果只有一个self目录,另一种简单的方法是

cd */.
*/。
是指它扩展到任何子目录中的“self directory”(命名)。当然,它本身就是子目录。请参考下面的示例了解其工作原理

例如


如果只有一个self目录,那么另一个简单的方法就是

cd */.
*/。
是指它扩展到任何子目录中的“self directory”(命名)。当然,它本身就是子目录。请参考下面的示例了解其工作原理

例如


find/a/b-type d-maxdepth 1应该为您提供目录b中目录的名称。如果您确定它只有一个,只需将输出存储在一个变量中,然后继续处理。这应该可以完成以下工作:
dirname/a/b/*/script
find/a/b-type d-maxdepth 1应该为您提供目录b中的目录名。如果您确定它只有一个,只需将输出存储在一个变量中,然后继续处理。这应该可以完成以下工作:
dirname/a/b/*/script
$ pwd
/home/dude/
$ mkdir -p a/b/ldsnds/c
$ cd a/b/*/.
$ pwd
/home/dude/a/b/ldsnds
$ cd -
/home/dude/
$ cd a/b/*/./c
$ pwd
/home/dude/a/b/ldsnds/c