我正在尝试使用一个简单的bash脚本,它在/opt中使用一个脚本
#!/bin/bash
pvpython=/opt/paraviewopenfoam54/bin/pvbatch
script_path=save_contours.py
$pvpython $script_path文件pvbatch确实存在,但是,当我试图运行脚本时,我会收到一条奇怪的错误消息,它感觉像是缺少了一些字符:
: No such file or directoryaviewopenfoam54/bin/pvbatch我使用的Ubuntu是Linux Windows子系统中的Ubuntu18.04.1LTS。是什么导致了这条错误消息?
当我在ls -al pvbatch中运行/opt/paraviewopenfoam54/bin时
-rwxr-xr-x 1 root root 84200 May 29 2018 pvbatchcat pvbatch返回错误消息
cat: write error: Input/output error发布于 2020-02-10 13:09:33
所以cat无法读取这个奇怪的文件!
我的第一个想法是,文件本身存在问题。文件是在哪里创建的?我看到它是在/opt/paraviewopenfoam54/bin下的,它是一个linux托管文件夹,您是在WSL中使用vim创建和编辑文件,还是使用VS代码之类的方式在windows中创建它?
让我检查一下,您没有直接在%LOCALAPPDATA%文件夹中的/opt文件夹中创建和编辑windows中的文件。如果该文件是在此方法中创建的,则有损坏WSL安装的风险。不要编辑WSL文件
发布于 2020-02-10 10:24:14
在使用WSL时,我通常会发现问题,特别是每当我直接从windows创建一个文件到Linux文件系统时,就会发现这个Input/output error问题。解决这个具体问题的方法主要有三种:(这些不是步骤,而是单独的解决方案)
-Restart您的Ubuntu终端
-Restart你的整个计算机
直接从-Delete中获取文件,touch文件,然后用旧文件覆盖文件
为了获得更可伸缩的解决方案,我建议将文件保留在windows系统中,并且只在Linux系统中工作。
https://stackoverflow.com/questions/60146274
复制相似问题