Windows命令行下类似于MacOS的Open命令
习惯了在macOS的Terminal里使用open命令,想在windows下也找一个类似的命令。
之前不记得在哪里找到了一个shell脚本,内容如下,把文件起名为open
,放到PATH
里就可以。
#!/bin/sh
# open
EDITOR="exec notepad.exe"
BROWSER="/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"
if [ -d "$1" ]; then
exec explorer.exe $(cygpath -w "$1")
elif [ -f "$1" ]; then
path=$(cygpath --windows "$1")
case "$1" in
*.xml) $EDITOR "$1";;
*.txt) $EDITOR "$1";;
*.html) "$BROWSER" "$path";;
file://*) "$BROWSER" "$path";;
http://*) "$BROWSER" "$path";;
https://*) "$BROWSER" "$path";;
esac
else
# TODO non-existent file/dir
echo "non existent file: $1"
exit 1
fi
exit 0
但这个脚本有很大局限,只能用编辑器或者浏览器打开文件。
今天找到一个开源项目neosmart/open,更为通用,会根据文件类型找对应的程序打开。
Last modified on 2022-06-08