偶爾會使用到Windows 系統, 由於之前都在 macOS 裡生活, 已經有在 Windows 裡安裝 WSL, 今天遇到的問題是 macOS command line 裡存取 clipboard 的功能, 在 Windows 的 WSL 裡執行會遇到錯誤.
在不修改程式的情況下, 讓 Windows environment 也可以執行同一支程式的解法:
Launch WSL terminal, 增加 ~/bin 目錄:
mkdir ~/bin
Modify your ~/.bashrc
or ~/.zshrc
depending on which shell you use (I use zshell) and add to the end of the file:
export PATH=$HOME/bin:$PATH
我是使用 zsh, 所以使用 nano ~/.zshrc 後, 在文件的最下面, 加入上面這一行.
執行指令:
nano ~/bin/pbcopy
加入下列內容:
#!/bin/bash # pbcopy for wsl tee <&0 | clip.exe exit 0
讓檔案為”可執行”:
chmod u+x ~/bin/pbcopy
執行指令:
nano ~/bin/pbpaste
加入下列內容:
#!/bin/bash # pbpaste for WSL powershell.exe Get-Clipboard | sed 's/\r$//' | sed -z '$ s/\n$//' exit 0