1. 程式人生 > >windows下編輯指令碼檔案在linux下出現錯誤

windows下編輯指令碼檔案在linux下出現錯誤

問題:

使用./shell.sh 出現出現錯誤:“/bin/sh^M:bad interpreter

使用sh shell.sh 生成的檔案會出現"a.txt^M"或者“a.txt?”

分析:

這裡這種情況的出現是因為,指令碼是在windows下編寫的,然後傳到linux上執行,而windows下的斷行符是^M$  linux下的斷行符是$linux執行的時候無法識別$之前的^M,所以顯示了奇怪的字元。

解決:

去除檔案中的“^M”

cat a.sh| tr -d "^M" > b.sh

如果不行去除"\r"

cat a.sh| tr -d "^M" > b.sh

然後名字復原:mv b.sh a.sh

相關推薦

windows編輯指令碼檔案linux出現錯誤

問題: 使用./shell.sh 出現出現錯誤:“/bin/sh^M:bad interpreter” 使用sh shell.sh 生成的檔案會出現"a.txt^M"或者“a.txt?” 分析: 這裡這種情況的出現是因為,指令碼是在windows下編寫的,然後傳到

Windows 編輯 hosts 檔案

hosts 檔案目錄:  C:\WINDOWS\system32\drivers\etc\hosts hosts是一個沒有副檔名的系統檔案,可以用記事本等工具開啟,其作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯。 當用戶在瀏覽器中輸入一

windows 生成的shell指令碼linux執行

由於部分命令不支援win系統環境,為了折衷,將部分程式碼在win系統下執行生成資料檔案以及shell指令碼,然後將其上傳到ubuntu10.04上執行指令碼處理。          但是當將shell指令碼上傳到ubuntu後,執行起來就出現了錯誤,不能得到正確的中間資料檔

linux編輯profile檔案

在Linux中,我們配置環境變數時,可以通過修改profile檔案的方式,但是通常情況下這個檔案是隻讀的,修改他需要root的許可權 所以以下是編輯 profile檔案命令 我用的是gedit開啟的 所以      1.su  然後輸入密碼 進入root  2.gedit

linuxpython指令碼檔案的執行與編碼解析

一、 先將終端所在路徑切換到python指令碼檔案的目錄下 然後給指令碼檔案執行許可權,一般755就OK,如果完全是自己的私人電腦,也不做伺服器什麼的,給777的許可權問題也不大(具體許可權含義參考c

記錄Window系統myeclipes連接linuxmysql所出現的一個bug

給賬號 onf flush 問題 info drive strong user BE 記錄myeclipes遠程連接mysql所出現的一個bug 今天在玩框架hibernate時,出現一個非常費解的bug,話不多說,先看bug Access denied for

基於Shell指令碼LinuxJavaweb專案一鍵部署

剛買到伺服器的時候想把專案部署上去時,經常會用到各種scp、unzip之類一大堆的命令。雖然整個流程不是特別麻煩,不過學了一些Shell的命令知識之後我發現這個過程還是有優化的空間,於是大概花了幾個小時完成了這樣一個自動部署的指令碼。 首先要解決的問題是,命令如何在遠端伺服器上執行,因為之前每次

Linux安裝jdk和Linux克隆出現的問題

關於克隆後的問題和配置 ——直接修改:/etc/sysconfig/network-script/ifcfg-eth0(可能沒有這個) ——刪掉:UUID HWADDR(可能沒有這個) ——配置靜態地址 ——然後 ——rm -rf /etc/udev/rules.d/70-persist

不區分大小寫的串比較---Windows的stricmp和Linux的strcasecmp

 不區分大小寫的串比較, 在實戰中的應用還是很廣泛的, 有時候可以增強程式的容錯性, 下面我們來分別看看Windows下的stricmp和Linux下的strcasecmp       Windows下的stricmp: #in

Notepad++編寫的shell指令碼linux無法執行的解決方法

Notepad++ 是一款Windows環境下免費開源的程式碼編輯器,支援的語言:C, C++ , Java , C#, XML, HTML, PHP, Javascript! 本文給大家講解的是用notepad++在windows下開發的shell指令碼上傳到li

[Vim] 02 用 Windows 的 gVim 假裝 Linux 的 Vim

0. 前言 這應該是極簡配置,“極簡”就是字面意思 我安裝的版本是 8.1.1 來看個素顏 1. 找到 _vimrc 文字 我裝在 E:\Program Files (x86)\Vim,所以它就在那裡 安全起見,就地存個副本 2 編輯 _vimrc

mac 執行指令碼檔案--親測可行

參考 點選開啟連結  ,後面為自己解釋。 mac終端下執行shell指令碼 1、寫好自己的 指令碼,比如aa.sh  2、開啟終端 執行,方法一: 輸入命令    ./aa.sh     , 方法二:直接把 aa.sh 拖入到終端裡面。 注意事項:

windows通過VisualVM遠端監控linux的tomcat使用情況

在網上找了可以說是n多文章呀,都配置過,但都不行,可能是我一開始tomcat裡面的檔案搞亂了吧,後來把tomat給刪掉,重新解壓一份,一步一步參照官方文件給出的解決方案,終於給解決了 1、在tomcat的安裝目錄下的conf/server.xml加上 <Listen

java生成文字檔案linux換行問題

         這是一個老生常談的問題,我只告訴大家我遇見的問題以及解決方案和整體思路。          首先我們是在windows環境下開發,伺服器環境為linux,需求是生成txt檔案並下載。          開始我用的換行符是System.getProperty

hadoop學習之HDFS(2.5):windowseclipse遠端連線linux的hadoop叢集並測試wordcount例子

windows下eclipse遠端連線linux下的hadoop叢集不像在linux下直接配置eclipse一樣方便,會出現各種各樣的問題,處處是坑,連線hadoop和執行例子時都會出現問題,而網上的

windows 使用navicat連線linux面的mysql資料庫出錯解決方法

本文我們主要介紹一下Navicat MySQL在連線Linux下的MySQL時出現的問題的解決方案,它是一套功能強大的MySQL資料庫伺服器管理及開發工具,可以用於在任何3.21或以上的MySQL版本,並支援最新版MySQL的大部份功能,包括觸發器、預存程式、函式、事件、檢

crontab定時執行指令碼linux

Linux有一個稱為crond的守護程式,主要功能是週期性地檢查 /var/spool/cron目錄下的一組命令檔案的內容,並在設定的時間執行這些檔案中的命令。使用者可以通過crontab 命令來建立、修改、刪除這些命令檔案。 例如,建立檔案crondFile,內容為“0

ubuntu 為何沒有/etc/inittab檔案linux程式的啟動流程

Linux 核心啟動 init ,init程序ID是1,是所有程序的父程序,所有程序由它控制。 Ubuntu 的啟動由upstart控制,自9.10後不再使用/etc/event.d目錄的配置檔案,改為/etc/init。 檢視當前的執行級別,Ubuntu 桌面預設是2。 ? 1 r

windows遠端連結虛擬機器LinuxMySQL資料庫

這裡先說一下MySQL登陸:   格式: mysql -h主機地址 -u使用者名稱-p使用者密碼     1、例1:連線到本機上的MYSQL     找到mysql的安裝目錄,一般可以直接鍵入命令mysql -uroot -p,回車後提示你輸密碼,輸入密碼,直接回車即

linux檢視系統屬性 Linux檢視和新增環境變數

Linux下檢視和新增環境變數 #檢視tomcat安裝路徑 sudo find / -name *tomcat* $PATH:決定了shell將到哪些目錄中尋找命令或程式,PATH的值是一系列目錄,當您執行一個程式時,Linux在這些目錄下進行搜尋編譯連結。   編輯你的 PATH 宣告