I can not run a command inside a shell script but I can outside of it? why?

Can someone help me understand why I can run a program outside of a shell script but not inside it? What modifications do I need to make here?
mike@bazzite:/var/home/mike/.local/bin$ playwright --version
/home/mike/.local/bin/playwright: 11: /usr/bin/distrobox: not found
mike@bazzite:/var/home/mike/.local/bin$ cat /home/mike/.local/bin/playwright
#!/usr/bin/env sh

# This script runs Playwright inside the 'playwright' Distrobox container.
# It ensures the current working directory is correctly mapped.

# Explicitly pass the current working directory for older Distrobox versions.
export DISTROBOX_ENTER_PATH="$(pwd)"
export DISTROBOX_EXEC=`which distrobox`

# Execute the playwright command inside the container.
/usr/bin/distrobox enter --name playwright -- playwright "$@"
mike@bazzite:/var/home/mike/.local/bin$ which distrobox
/usr/bin/distrobox
mike@bazzite:/var/home/mike/.local/bin$
mike@bazzite:/var/home/mike/.local/bin$ playwright --version
/home/mike/.local/bin/playwright: 11: /usr/bin/distrobox: not found
mike@bazzite:/var/home/mike/.local/bin$ cat /home/mike/.local/bin/playwright
#!/usr/bin/env sh

# This script runs Playwright inside the 'playwright' Distrobox container.
# It ensures the current working directory is correctly mapped.

# Explicitly pass the current working directory for older Distrobox versions.
export DISTROBOX_ENTER_PATH="$(pwd)"
export DISTROBOX_EXEC=`which distrobox`

# Execute the playwright command inside the container.
/usr/bin/distrobox enter --name playwright -- playwright "$@"
mike@bazzite:/var/home/mike/.local/bin$ which distrobox
/usr/bin/distrobox
mike@bazzite:/var/home/mike/.local/bin$
Solution:
This was caused by a problem inside the distrobox where playwright was running the same alias that was launching the distrobox, this was corrected by changing the line
/usr/bin/distrobox enter --name playwright -- playwright "$@"
/usr/bin/distrobox enter --name playwright -- playwright "$@"
...
Jump to solution
1 Reply
Solution
Mike Hollis Jr
Mike Hollis Jr2mo ago
This was caused by a problem inside the distrobox where playwright was running the same alias that was launching the distrobox, this was corrected by changing the line
/usr/bin/distrobox enter --name playwright -- playwright "$@"
/usr/bin/distrobox enter --name playwright -- playwright "$@"
to
/usr/bin/distrobox enter --name playwright -- npm playwright "$@"
/usr/bin/distrobox enter --name playwright -- npm playwright "$@"

Did you find this page helpful?