eopen: Open Explorer from Terminal.
ecd: Change directory of Terminal and Explorer at once.
- Windows 10 64bit 1903 or later recommended (
\\wsl$\path is supported) - At least Windows 10 64bit 1803 is required for WSL (
wslpathrequired) - Probably works on Windows 7 (includes 32bit) or later
- Of course, PowerShell and Command Prompt only
WSL/WSL2recommended for the terminal- Works on
bash,zsh,ksh,mksh,yash,tcsh,fish
- Works on
- Semi-support for PowerShell and Command Prompt
| eopen | eclose | ewd | ecd | epushd | epopd | elsi | |
|---|---|---|---|---|---|---|---|
| WSL | o | o | o | o | o | o | o |
| PowerShell | - | - | o | o | o | o | o |
| Command Prompt | - | - | o | o | o | o | o |
Note Currently, eopen and eclose are not implemented for
PowerShell / Command Prompt. Use explorer.exe instead.
Usage: eopen [ -e | --editor ] [ -n | --new ] [ --sudo ] [ -g | --background ]
[ -s | --search ] [ -S | --web-search ] [ -v | --version ] [ -h | --help ]
- Open the directory with Explorer from the Terminal.
- Open the file with application from the Terminal.
# Open directory with (latest used) Explorer
eopen ~/.config/
# Open directory with new instance of Explorer
eopen -n ~/.config/
# Opens with Windows default application
eopen image.png
# Opens with Windows text editor
eopen -e ~/.bashrc
# Use sudo to edit the unowned file
eopen -e --sudo /etc/hosts
# Opens with Windows default browser
eopen http://google.com
# Search with Windows explorer
eopen -s "*.conf" /etc/ "size:>1KB"
# Note: The query depends on the locale. e.g. 'サイズ:>1KB' in Japanese.
# Search with Windows default browser
eopen -S "eopen-ecd"
# Open files and directories under Windows
eopen C:/Windows
# Open files and directories under Network shared folder
eopen //server/shared
# Others
eopen mailto:[email protected] # Mail protocol
eopen calculator: # Application
eopen shell:Personal # Shell commands
eopen :MyComputerFolder # Shorthand for shell:
eopen shell:::{2559a1f8-21d7-11d4-bdaf-00c04f60b9f0} # CLSID
eopen : # Current Explorer location
eopen :/workspace # Relative path from current Explorer location
| name | description | default |
|---|---|---|
EOPEN_EDITOR |
Execution path of editor for eopen -e |
notepad.exe |
EOPEN_SEARCH |
URL template for web search | https://www.google.com/search?q=%s |
EOPEN_LAUNCH_TO |
Default location for new explorer | Windows settings |
Note Set environment variables on Windows (not in WSL).
Hint EOPEN_LAUNCH_TO accepts Shell: commands and CLSID not only Windows path.
Usage: eclose
Close the (lastest used) Explorer.
Usage: ewd [ -u | --unix ] [ -w | --windows ] [ -m | --mixed ]
Display path of the (latest used) Explorer location.
Usage: ecd <directory>
Change the directory of Terminal and Explorer at once.
If first charactor of path is :, it means relative path from current
Explorer location.
# Change the directory to the '/etc'. (Both Terminal and Explorer)
ecd /etc
# Change the directory to the 'C:\Windows'. (Both Terminal and Explorer)
ecd c:/windows
# Change the directory to the current Explorer location.
ecd :
# Change the directory to the 'workspace' from current Explorer location.
ecd :/workspace
# Change the directory to the home directory.
ecd
# Change the directory to the Windows home (%USERPROFILE%) directory. (WSL only)
ecd ~~
# Change the directory to the ~~ directory instead Windows home directory.
ecd ./~~
Usage: epushd <directory>
Usage: epopd
Push or pop a directory to the directory stack stack, And Change the directory
of Terminal and Explorer at once. (Use push instead of cd.)
Note Not available on ksh and mksh, since push and pop are not implemented.
Usage: elsi [ -u | --unix ] [ -w | --windows ] [ -m | --mixed ] [ -0 | --null]
List selected items of the Explorer.
Download from releases page
Note Highly recommend using x64 binary on Windows 10 64bit edition.
x86 binary is also work, but access to the WSL path (\\wsl$\...) from
32bit process is unstable. (Related? issue 4260 of microsoft/WSL)
Note It is also distributed for Windows 10 ARM / ARM64. But I do not have those platforms. So it has not been tested at all.
Extract the zip file to any directory and set to your shell's profile.
Note Require to enable Launch folder windows in a separete process in
Explorer -> File -> Change folder and search options -> View
-> Advanced settings.
Change the following line to the appropriate path and add it to your shell's profile under your home directory.
eval "$(sh "/path/to/eopen-ecd/init.sh")"[Profile] bash: .bashrc, zsh: .zshrc, ksh: .kshrc,
mksh:, .mkshrc, yash: .yashrc
eval `sh "/path/to/eopen-ecd/init.sh" tcsh`[Profile] tcsh: .tcshrc
eval (sh "/path/to/eopen-ecd/init.sh" fish)[Profile] fish: .config/fish/config.fish
Change the following line to the appropriate path and add it to your PowerShell's profile.
. "/path/to/eopen-ecd/init.ps1"To edit profile, type notepad $PROFILE in PowerShell.
Note Require to change PowerShell execution policy.
(Google Set-ExecutionPolicy).
Change the following line to the appropriate path and add it to profile.bat
(or favorite name)
@call \path\to\eopen-ecd\init.batLoad it to Command Prompt. (For example, use cmd /k profile.bat)
The ebridge.exe is helper module that operate shell (Explorer) via
COM Automation. All scripts are thin frontend of the ebridge.exe.
Require to install Visual Studio 2019 to build. (Free Community Edition is enough.)
To build, the following steps after installation of Visual Studio 2019
- Run
Developer Command Prompt for VS 2019from the start menu - Goto project root directory
- Run
build.bat <TARGET...>(TARGET:x86,x64,arm,arm64) - Generate archive files to the
distdirectory.
Or double click ebridge.sln in the src directory to launch Visual Studio IDE.
None, should be do.
The formerly name of this project was ecd that was started to port
the fcd for macOS to Windows.
The core module was written with PowerShell script. Early version of
ecd and eopen were relies on the script. It was a bit slow (about 400ms-).
So I rewrote the core module as native by VC++.
And eopen, which has many features, has been changed to the main.
MIT License
