shelljs / shelljs/shx

Glob expansion does not work when the filename pattern contains multiple periods on windows

Open
#247 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

fix Windows
Dominant language
JavaScript
Stars
1.9k
Forks
51
Avg merge
3d 2h
Merged PRs (30d)
1

Description

Version: 0.3.4

Issue: Running a command like shx ls \"src/**/*.mixins.scss\" will result in ls: no such file or directory: src/**/*.mixins.scss
If the command is instead shx ls \"src/**/*.scss\" then the command works as expected.

This is true for many commands such as mv, cp, rm etc

I tested the glob expansion behavior directly in Git bash, powershell and in a shell in Ubuntu and glob expansion works as expected.

I have not tested the shx behavior in linux.

Let me know if I should structure the command differently.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the quoted shx ls command on Windows, then trace glob handling for ls and the other affected commands such as mv, cp, and rm. The work is done when patterns containing multiple periods, such as src/**/*.mixins.scss, expand correctly on Windows without regressing simpler patterns.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.