shell下路径带空格问题

在Linux中尝试使用wine运行Windows程序时,遇到因路径包含空格导致的文件打开失败问题。通过脚本转换路径中的空格,但遇到了wine找不到文件的错误。本文记录了这个问题及尝试的解决方案。
摘要由CSDN通过智能技术生成

倒腾了半天的wine,希望在linux下使用windows程序。

本想使用FoxitReader看PDF的,无奈安装好了却打不开DPF文件,网上查询说是文件关联问题,windows目录结构是用“\”,而Linux确是用"/",导致打不开文件问题。

网上找到了解决方法,使用脚本进行路径空格的转换,源码如下,无奈,有错“wine: cannot find '/home/haoxi/.wine/drive_c/Program\'

#!/bin/bash
# this is the wrapper to launch windows foxit reader
FoxitReader_wine="/home/haoxi/.wine/drive_c/Program\ Files/Foxit\ Software/Foxit\ Reader/Foxit\ Reader.exe"
root_drive='Z:\\'
launch_param=''
for file in $@
do
    # if the file path is not full path, we should expand it
    if [ ! `echo $file | grep ^/` ]; then
        file="$(pwd)/$file"
    fi
   # format path under wine (Z:\ is the root in wine)
    param="${root_drive}$(echo "$file" | sed 's/\//\\/g')"
    launch_param="$launch_param $param"
done
  #run f
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值