错误:shell执行脚本时报"bad interpreter: Text file busy"的解决办法

在ubuntu下执行以下脚本( zhaolu.sh),报错:

-bash: ./zhaolu.sh: /bin/bash: bad interpreter: Text file busy

文本文件忙,发生的原因是:

This happens because the script file is open for writing, possibly by a rogue process which has not terminated.

就是说有其他进程在写它。

所以解决方法就是

  1. 等待它的那个进程写完。

  2. 或者找到那个进程然后直接杀死。

    查找文件:

    192:~ lurongming$ lsof | grep zhaolu.sh
    vim       30347 lurongming    4u     REG                1,4     12288 5619361 /Users/lurongming/.zhaolu.sh.swp
    

    lsof - list open files : 列出当前系统打开的文件。
    在linux环境下,一切皆文件。文件不仅包括常规数据,还可以访问网络连接和硬件

    杀死文件:

     192:~ lurongming$ kill -9 30347
    
  3. 也可以可以在#!/bin/bash,加一空格#! /bin/bash。

    不知道为什么加了空格会这样?网上也没找到原因?😭

发布了55 篇原创文章 · 获赞 3 · 访问量 6621
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章