也许这能稍微提高一下wine程序的可用性,例如可以直接打开文件。
很简单,但遇到一个不小的问题:
形如 a=`echo /usr/bin|sed 's/\//\\/g'` 的语句会出错;
sed:-e 表达式 #1,字符 8:未终止的“s”命令
而直接 echo /usr/bin|sed 's/\//\\/g' 是没问题的。
不知道哪里出的问题,可能是'\'太多?上网找了半天没结果。
后来想到zsh可以用 $()代替``,于是:
a=$(echo /usr/bin|sed 's/\//\\/g'),这回可以了。
先这么用吧。
如果要wine a.exe,让a.exe可以直接关联文件,可以这样写脚本
#!/bin/zsh
cd a.exe所在目录
if [ "$1" != "" ]; then
echo $1
a=$(echo -n $1|sed 's/\//\\/g')
a=Z:\\$a
wine a.exe "$a"
else
wine a.exe
fi
但这样只能打开一个文件,打开多个文件也同理,依次处理就行
很简单,但遇到一个不小的问题:
形如 a=`echo /usr/bin|sed 's/\//\\/g'` 的语句会出错;
sed:-e 表达式 #1,字符 8:未终止的“s”命令
而直接 echo /usr/bin|sed 's/\//\\/g' 是没问题的。
不知道哪里出的问题,可能是'\'太多?上网找了半天没结果。
后来想到zsh可以用 $()代替``,于是:
a=$(echo /usr/bin|sed 's/\//\\/g'),这回可以了。
先这么用吧。
如果要wine a.exe,让a.exe可以直接关联文件,可以这样写脚本
#!/bin/zsh
cd a.exe所在目录
if [ "$1" != "" ]; then
echo $1
a=$(echo -n $1|sed 's/\//\\/g')
a=Z:\\$a
wine a.exe "$a"
else
wine a.exe
fi
但这样只能打开一个文件,打开多个文件也同理,依次处理就行
没有评论:
发表评论