# PathDepth (Display depth in folder hierarchy)

**URL:** https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681
**Category:** Buttons/Scripts
**Tags:** script, column, jscript
**Created:** [November 2, 2022, 3:33pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681 "2022-11-02T15:33:54Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![lxp](https://resource.dopus.com/user_avatar/resource.dopus.com/lxp/32/33734_2.png) [@lxp](https://resource.dopus.com/u/lxp)
#### Post date: [November 2, 2022, 3:33pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/1 "2022-11-02T15:33:54Z")

</div>

This script column **PathDepth** displays the depth of files and folders in the folder hierarchy. Items on the root level (e.g. in `C:\`) have level 1. Useful in filters and for sorting and grouping in Flatview.

 ![image](https://resource.dopus.com/uploads/default/original/3X/e/1/e1549f299bb6c30b5146280061b4337f38ac4671.png)

```javascript
function OnInit(initData) {
    initData.name = 'PathDepth';
    initData.version = '2022-11-03';
    initData.copyright = '';
    initData.url = 'https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681';
    initData.desc = 'Display path depth.';
    initData.default_enable = true;
    initData.min_version = '12.0';
}

function OnAddColumns(addColData) {
    var col = addColData.AddColumn();
    col.name = 'PathDepth';
    col.method = 'OnColumn';
    col.justify = 'right';
    col.type = 'number';
}

function OnColumn(scriptColData) {
    scriptColData.value = scriptColData.item.path.components;
}

```

[ColumnPathDepth.js.txt](https://resource.dopus.com/uploads/short-url/jT1znVamZ3RVIhbO6vNKlWEiCSQ.txt)

* * *

[How to use buttons and scripts from this forum](https://resource.dopus.com/t/how-to-use-buttons-and-scripts-from-this-forum/3546)

* * *

In **Opus v13** a simple Eval column can replace the script column:

```plaintext
Count(path)

```

 ![image](https://resource.dopus.com/uploads/default/original/3X/7/1/7145935ab5f73b43355d0c56de3b6b9a54ee63f6.png)

> **evalcolumn as XML**
>
> ```plaintext
> <?xml version="1.0"?>
> <evalcolumn align="1" attrrefresh="no" autorefresh="no" foldertype="all" keyword="PathDepth" maxstars="5" namerefresh="no" reversesort="no" title="PathDepth" type="2">Count(path)</evalcolumn>
> 
> ```

---

<div class="post-metadata">

### Author: ![qiuqiu](https://resource.dopus.com/user_avatar/resource.dopus.com/qiuqiu/32/55961_2.png) [@qiuqiu](https://resource.dopus.com/u/qiuqiu)
#### Post date: [November 3, 2022, 12:32am UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/2 "2022-11-03T00:32:28Z")

</div>

`scriptColData.item.path.Split().count = scriptColData.item.path.components?`

---

<div class="post-metadata">

### Author: ![lxp](https://resource.dopus.com/user_avatar/resource.dopus.com/lxp/32/33734_2.png) [@lxp](https://resource.dopus.com/u/lxp)
#### Post date: [November 3, 2022, 5:17am UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/3 "2022-11-03T05:17:26Z")

</div>

Yes. The property probably needs less computing power, which is always welcome. Thanks!

---

<div class="post-metadata">

### Author: ![pctechtv](https://resource.dopus.com/user_avatar/resource.dopus.com/pctechtv/32/33246_2.png) [@pctechtv](https://resource.dopus.com/u/pctechtv)
#### Post date: [May 20, 2023, 6:25pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/4 "2023-05-20T18:25:39Z")

</div>

Super script and ideas. Thank You

---

<div class="post-metadata">

### Author: ![jinsight](https://resource.dopus.com/user_avatar/resource.dopus.com/jinsight/32/43666_2.png) [@jinsight](https://resource.dopus.com/u/jinsight)
#### Post date: [June 6, 2023, 1:12am UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/5 "2023-06-06T01:12:21Z")

</div>

How would I get the path depth from this to use in a simple conditional in a button on the order of: If pathdepth = 1 then display a message? I'm interested in how to do the if clause. Can I do this without the column being displayed? Thanks for any help.

---

<div class="post-metadata">

### Author: ![Chuck](https://resource.dopus.com/user_avatar/resource.dopus.com/chuck/32/23917_2.png) [@Chuck](https://resource.dopus.com/u/Chuck)
#### Post date: [October 21, 2023, 3:25pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/6 "2023-10-21T15:25:58Z")

</div>

@lxp As always, thanks for posting helpful scripts! Looking at path depth from the opposite angle, how might one calculate depth from the current directory to component(s) within the deepest subfolder?

---

<div class="post-metadata">

### Author: ![lxp](https://resource.dopus.com/user_avatar/resource.dopus.com/lxp/32/33734_2.png) [@lxp](https://resource.dopus.com/u/lxp)
#### Post date: [October 21, 2023, 3:59pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/7 "2023-10-21T15:59:05Z")

</div>

> [@jinsight](#):
>
> If pathdepth = 1 then display a message?

That's a job for the Evaluator in v13 🙂

---

<div class="post-metadata">

### Author: ![lxp](https://resource.dopus.com/user_avatar/resource.dopus.com/lxp/32/33734_2.png) [@lxp](https://resource.dopus.com/u/lxp)
#### Post date: [October 21, 2023, 4:02pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/8 "2023-10-21T16:02:48Z")

</div>

> [@Chuck](#):
>
> calculate depth from the current directory to component(s) within the deepest subfolder?

If you already have the deepest subfolder it's basic calculus. Finding the deepest subfolder is a bit trickier. Are you looking for the absolute deepest subfolder or the first folder that doesn't contain another folder?

---

<div class="post-metadata">

### Author: ![Chuck](https://resource.dopus.com/user_avatar/resource.dopus.com/chuck/32/23917_2.png) [@Chuck](https://resource.dopus.com/u/Chuck)
#### Post date: [October 21, 2023, 7:31pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/9 "2023-10-21T19:31:09Z")

</div>

Looking for absolute deepest folder. Example:

Deepest Filepath = Root\F1\F2\F3...\Fn\component

If F3 is displayed in lister, then PathDepth = 4 and AbsoluteDepth = Fn + 1

---

<div class="post-metadata">

### Author: ![lxp](https://resource.dopus.com/user_avatar/resource.dopus.com/lxp/32/33734_2.png) [@lxp](https://resource.dopus.com/u/lxp)
#### Post date: [October 22, 2023, 8:20am UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/10 "2023-10-22T08:20:35Z")

</div>

You would need to completely enumerate F3, get the path depth of all folders, and keep the folder with the maximum number. Certainly doable, but displaying the results in columns might get a bit slow on large HDDs with a big folder tree.

---

<div class="post-metadata">

### Author: ![Chuck](https://resource.dopus.com/user_avatar/resource.dopus.com/chuck/32/23917_2.png) [@Chuck](https://resource.dopus.com/u/Chuck)
#### Post date: [October 22, 2023, 1:41pm UTC](https://resource.dopus.com/t/pathdepth-display-depth-in-folder-hierarchy/42681/11 "2023-10-22T13:41:01Z")

</div>

Thanks for confirming my suspicion. Not sure the result is worth the effort given some extensive folder trees I manage and other non-DO tools at hand.
