← All commands
Topic hub Text Processing
Windows Linux Text Processing Expanded guide Search

Windows dir /s /b (recursive list) equivalent in Linux

Recursively lists every file in a directory tree, one per line — no directories, just files.

Windows dir /s /b (recursive list)
→
Linux equivalents
Debian/Ubuntu same command
find . -type f
Fedora same command
find . -type f
Arch same command
find . -type f

Overview

What this command does

On Windows, "dir /s /b (recursive list)" is used to list all files recursively. On Linux, the closest practical mapping shown here is "find . -type f". Recursively lists every file in a directory tree, one per line — no directories, just files. This reference is grouped under Text Processing → Search.

Migration tip: Combine with <code>wc -l</code> to count files, <code>xargs</code> to act on them, or <code>grep</code> to filter by name. <code>-type d</code> lists only directories instead.

Windows → Linux context

What changes when you use this on Linux?

Equivalent task, different tool

Windows dir /s /b (recursive list) maps to find . -type f for this task. Treat this as a workflow mapping rather than a character-for-character syntax translation.

Portable across the compared distros

The Debian/Ubuntu, Fedora and Arch rows use the same command in this mapping. Package availability or defaults can still vary, so check the installed tool version when an option behaves differently.

Practical tasks

Common use cases

List all files recursively

Recursively lists every file in a directory tree, one per line — no directories, just files.

find . -type f

All files recursively

find . -type d

All directories recursively

find . -name '*.log'

All .log files

Ready to run

Copyable Linux commands

Review paths, device names, package names and permissions before running any command.

find . -type f
find . -type f | wc -l
find . -name '*.py'
find . -name '*.tmp' -delete

Walkthrough

Examples with explanations

# Windows: dir /s /b
find . -type f              # all files
find . -type f | wc -l     # count files
find . -name '*.py'         # python files only

# Find and delete temp files:
find . -name '*.tmp' -delete

Reference

Common options and variations

Command or optionUse
find . -type fAll files recursively
find . -type dAll directories recursively
find . -name '*.log'All .log files
find . -size +10M -type fFiles larger than 10MB
find . -emptyFind empty files and directories
find . -name '*.tmp' -deleteDelete all .tmp files

Distro differences

Debian/Ubuntu vs Fedora vs Arch

Debian/Ubuntu, Fedora and Arch all use "find . -type f" for this mapping. The command syntax shown here is portable across the three rows, although installed versions and system defaults can still vary.

DistributionPackage manager / baseEquivalent commandDifference to notice
Debian/Ubuntu same command find . -type f Same command on this distribution.
Fedora same command find . -type f Same command on this distribution.
Arch same command find . -type f Same command on this distribution.

Keep learning

Related Text Processing commands