DEV Community

Cover image for From PowerShell to Bash: The Folder That Almost Broke Me
Peter Olanrewaju Fadeyi
Peter Olanrewaju Fadeyi

Posted on

From PowerShell to Bash: The Folder That Almost Broke Me

I didn’t expect creating a folder to become the most stressful part of my day.

I’ve been comfortable using PowerShell for a while. It’s familiar, predictable, and most of the time it feels straightforward. But I kept hearing about how important Linux and Bash are, especially if you’re doing development or working with servers.

So I decided to make the switch..... Or at least… start learning.

I installed Ubuntu using WSL and connected it to VS Code. Everything seemed smooth at first. The terminal opened, the prompt appeared, and I felt like I was officially stepping into the Linux world.

Then the confusion started.

The First Shock: The Linux Filesystem

The first thing that caught me off guard was the folder structure.

When I tried to open a folder in VS Code through File → Open Folder at the top left of the editor, instead of seeing something familiar, I saw this list:

bin
boot
dev
etc
home
lib
mnt
opt
proc
root
Enter fullscreen mode Exit fullscreen mode

Linux filesystem inside VS Code

My immediate reaction was: What is all this?

Coming from PowerShell, I’m used to navigating something that feels closer to Windows. But Linux exposes its entire filesystem structure, and at first it looks intimidating.

I eventually learned that the place I actually needed was inside:

/home

Then inside my username directory:

/home/fadeyi_peter

That’s basically the Linux equivalent of your personal workspace.

The Folder That Caused All the Stress

I wanted to create a folder called:

Linux Servers
Enter fullscreen mode Exit fullscreen mode

Simple, right?

Apparently not.

When I tried creating it from the terminal using:

mkdir Linux Servers

Linux interpreted that as two separate folders: Linux and Servers.

That’s when I started getting errors like:

mkdir: cannot create directory 'Linux': File exists
mkdir: cannot create directory 'Servers': File exists
Enter fullscreen mode Exit fullscreen mode

At this point I started blaming myself.

I remember thinking:

“Why did I leave PowerShell? This never stressed me like this.”

I tried deleting folders, recreating them, navigating around, and things just felt messy.

Eventually I switched to creating the folder directly from the VS Code explorer panel instead of the terminal.

And it worked.

The Next Confusing Moment

After finally creating the folder, I closed VS Code and reopened it.

And guess what happened?

It opened the HOME folder again instead of my new folder.

Home

I thought I had done something wrong again.

But the truth is much simpler: VS Code just opens your home directory by default when working with WSL. Your folder is still there — you just need to navigate back to it.

That realization alone removed a lot of unnecessary stress.

The First Command That Made Sense

One command that quickly became useful was:

pwd

pwd

At first I had no idea what it meant.

It turns out pwd stands for:

Print Working Directory

In simple terms, it tells you where you are in the filesystem.

Example:

pwd

Output:

/home/fadeyi_peter/Linux Servers

That command alone made navigating much easier because I could always confirm where I was in the filesystem.

What finally worked was going back to File → Open Folder, selecting home, then my username, and finally the folder I created before clicking OK.

folder

The Lesson I Took From This

Switching environments is never just about learning new commands.

It’s about adjusting how you think.

PowerShell and Bash approach things differently, and the Linux filesystem is much more exposed than what many Windows users are used to.

But the biggest lesson for me today was this:

Frustration is part of the learning process.

At one point I was genuinely stressed over creating a folder.

Now it feels almost funny.

Advice for Anyone Moving From PowerShell to Bash

If you're making the same transition, here are a few things that helped me:

Your personal files live inside /home/your-username.

Avoid spaces in folder names when using the terminal.

Use commands like pwd, ls, and cd to understand where you are.

Don’t panic when you see folders like bin, etc, or lib. They’re just part of the Linux system structure.

Most importantly:

Be patient with yourself.

The first day with Bash might feel confusing, but every small thing you figure out adds up.

Even if that small thing is just learning how to create a folder in Bash.

If you’ve recently switched from PowerShell to Bash, I’d love to hear what confused you the most during your first experience.

Top comments (0)