錯誤: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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章