linux script 用記事本等編輯過就無法 run 問題

第 1 頁,共 2 頁 1 2 末頁末頁
顯示結果從第 1 筆 到 10 筆,共計 11 筆
  1. #1
    會員
    註冊日期
    2005-03-31
    討論區文章
    50

    linux script 用記事本等編輯過就無法 run 問題

    想要請教大家一下, liunx shell script 經由網路芳鄰從 windows 系統用 記事本 或 wordpad 等編輯過後,linux 系統就無法執行該檔案,必須使用 dos2unix 指令轉換後才可執行,想請教是否有方法不需經過這道程序,在windows 從網路芳鄰編輯過後 linux 依然可以執行這個 shell script 呢?
    有試過 Ultra Edit 編輯過,但是他會先儲存就的檔案,產生一個 .bak 的檔案,然後產生一個新的檔案,但是這個檔案卻又會變成沒有執行的權限,請各位指導建議,謝謝


    此文章於 2007-08-29 11:54 PM 被 lych911 編輯。

  2. #2
    會員
    註冊日期
    2001-03-28
    討論區文章
    1,641

    回覆: linux script 用記事本等編輯過就無法 run 問題

    因為換行碼被記事本修改過了,變成 windows 用的換行碼。
    所以必須再轉回 unix 格式的文字檔換行碼才行。
    記事本跟 wordpad 是 M$ 的基本內建工具,所以只儲存 win 格式。

    找找可以在儲存時不變動換行碼的,或是可以選擇儲存不同格式的。
    像 ultraedit emedit。

    ps: ultraedit 儲存備份檔 .bak 功能是可以關掉的。到設定功能 backup 裡改成no backup 就可。

  3. #3
    會員
    註冊日期
    2005-03-31
    討論區文章
    50

    回覆: linux script 用記事本等編輯過就無法 run 問題

    目前已經找了文字編輯軟體 Notepad++ 來取代 win 的記事本,這樣問題也就解決了,謝謝^^

  4. #4
    萌え尽き症候群 琥珀 的大頭照
    註冊日期
    2002-08-17
    所在地區
    中和區
    討論區文章
    10,022
    換行格式不是微軟的專利,只是遊戲規則而已,所以大可不用 M$ 一詞。

    反過來說,有許多文字檔,目標是給 Windows 用戶瀏覽,也沒有試著去轉換一下、補個附檔名,讓習慣圖形介面操作的用戶覺得不方便,甚至反感。是否應該將心比心,檢討一下,互相尊重彼此的差異,不要總是把問題都歸咎於作業系統、軟體公司。

  5. #5
    會員
    註冊日期
    2001-03-28
    討論區文章
    1,641

    回覆: linux script 用記事本等編輯過就無法 run 問題

    引用 作者:琥珀 瀏覽文章
    換行格式不是微軟的專利,只是遊戲規則而已,所以大可不用 M$ 一詞。

    反過來說,有許多文字檔,目標是給 Windows 用戶瀏覽,也沒有試著去轉換一下、補個附檔名,讓習慣圖形介面操作的用戶覺得不方便,甚至反感。是否應該將心比心,檢討一下,互相尊重彼此的差異,不要總是把問題都歸咎於作業系統、軟體公司。
    請問一下,那一句話符合你上面所說的『不要總是把問題都歸咎於作業系統、軟體公司。』?

    請明示一下?



  6. #6
    Kree linux_xp 的大頭照
    註冊日期
    2002-01-19
    討論區文章
    2,655

    回覆: linux script 用記事本等編輯過就無法 run 問題

    覺得 Madedit 比 Notepad++ 好用,也是免費的
    特點是有直接轉碼功能,可把 BIG-5 轉成 UTF-8,簡體轉繁體


    那是「換行格式」的問題

    unix 換行是插入一個 LF (換行)的標記
    這個標記在文字檔中不會看到,因為編輯器會自動忽略
    但用二進制去看即可看到

    M$ 的換行,除了 LF,還會插入一個 Return (回車)的標記
    意思是模擬打字機換行後,拉「拉桿」把文件回到起始
    也就是總共會插入兩個標記

    Return 標記在 unix 系統中
    因為編輯器不會自動忽略,會被視為亂碼

    同樣的,unix 換行的文字檔
    拿到 windows 底下開啟,會全部擠在一行
    原因是少了 Return 的標記


    如果以「邏輯性」和「方便性」來說
    多插一個 Return 標記是比較沒道理
    因為換行後,就是要回到起點
    沒必要再多一個標記,告訴編輯器要回到起點
    這樣只會多浪費存儲的資料量

    想必 M$ 也不想維持這個傳統
    但因為是從 DOS 時代就有了,為了相容只好一錯再錯
    這算是 M$ 的一個歷史包袱

  7. #7
    萌え尽き症候群 琥珀 的大頭照
    註冊日期
    2002-08-17
    所在地區
    中和區
    討論區文章
    10,022
    以組合語言的角度來看,內部本身就是 Line Feed (餵一行) 和 Carriage Return (返回游標)。

    自己也不能期望改變大局。MAC/UNIX/DOS 都弄一套規則,一般的用戶怎能承受這些區別?

    要改變 DOS 和 Windows 的 0D0A 定律,現行幾乎是不可能的,除非現有的累積成果拋棄掉,重新定義一次。目標是給何種系統使用,去遵守規則就是了。現在還要去爭這個換行定義的不同,有些不合時宜。

    曾經收到不少 .inf/.reg/.txt 檔案,都是 unix 換行格式,不過 win 內部還是會默默接受,不會不准執行。每次碰到「一行文字檔」,直覺反應就是用瀏覽器開啟,或是用第三方的記事本。

    关于"回车"(carriage return)和"换行"(line feed)

  8. #8
    Kree linux_xp 的大頭照
    註冊日期
    2002-01-19
    討論區文章
    2,655

    回覆: linux script 用記事本等編輯過就無法 run 問題

    just 討論「原理」和「電腦歷史」而已,沒別的意思

    我桌上型用 XP,伺服器用 Linux
    所以這種現象早習慣了,並不會覺得困擾

    說穿了,這只不過是一個跨平台必要的常識
    不清楚原理,就像樓主會奇怪為甚麼記事本編輯後會這樣子
    原理通了,也就見怪不怪了
    每個人都是這樣走過來的,這部份都學習過、也困擾過
    沒有人天生就是知道這種知識的,都是聽別人說了才知道
    從網路得到人的幫助,然後又去幫助別人,合情合理

    要說明這個問題的真正原因,肯定是要解釋何謂「換行格式」
    如此才能通「原理」,解答才有意義
    而不只是換個編輯器,就能解決問題這麼簡單

    因為就算使用較專業的編輯器,開了 LF-CR 換行的 shell script
    若不轉成 unix 格式,它還是一樣不能執行的!

    唯有真正瞭解它的原因、原理
    編輯時才會注意到格式問題,也才不會發生不能執行的錯誤
    這才算一個完美的解答

    換行格式,是 windows / unix 跨平台的使用者
    必要知道的一個知識,知道了,才能工作
    絕沒有去批評 OS 誰是誰非的意思


    若要再深入討論:
    shell script 為何會那麼在乎換行符號?

    個人認為原因有二:
    -----------------------------
    1.
    shell script 並沒有結尾符號的設計
    例如 php、java...等程式語言,是以 ; 分號來判斷結尾
    但 shell script 一般並不需結尾符號,它是以換行標記來判斷結尾的

    2.
    shell script 裡面很多指令(關鍵字),實際上就是系統指令
    如果多出一個 ^M,shell 就認不出那是什麼指令,或是什麼檔案
    即是會回應:指令不存在、檔案不存在,然後執行錯誤


    題外話:

    當然期望 M$ 或 unix-like 誰去改變,都是多餘的,各有各的立場

    如果 M$ 會改變,也就不會有 .doc 這東西,也就不會有 IE only
    它市佔率是高沒錯,但終究是封閉、壟斷的格式,這是不可否認的事實

    開放的格式,是任何人都可以使用
    而封閉,甚至專利的格式,用了可是會被告的
    這是它們最大的不同點

    $ 這個符號,只說明要"錢",除此之外,貌似也沒別的意思
    個人認為將其擴大解釋成有鄙視的味道,是太過度敏感了
    也許網路上提到這個詞的人
    往往只是因為花太多錢在上面,表達一下不滿而已
    就好比口渴去投個販賣機,結果硬幣被吃掉
    難道一般人不會踢一下,說:這吃錢的鬼
    這是合情合理的情緒表現吧

  9. #9
    會員
    註冊日期
    2001-03-28
    討論區文章
    1,641

    回覆: linux script 用記事本等編輯過就無法 run 問題

    引用 作者:琥珀 瀏覽文章
    以組合語言的角度來看,內部本身就是 Line Feed (餵一行) 和 Carriage Return (返回游標)。

    自己也不能期望改變大局。MAC/UNIX/DOS 都弄一套規則,一般的用戶怎能承受這些區別?

    要改變 DOS 和 Windows 的 0D0A 定律,現行幾乎是不可能的,除非現有的累積成果拋棄掉,重新定義一次。目標是給何種系統使用,去遵守規則就是了。現在還要去爭這個換行定義的不同,有些不合時宜。

    曾經收到不少 .inf/.reg/.txt 檔案,都是 unix 換行格式,不過 win 內部還是會默默接受,不會不准執行。每次碰到「一行文字檔」,直覺反應就是用瀏覽器開啟,或是用第三方的記事本。

    关于"回车"(carriage return)和"换行"(line feed)

    所以你的重點是什麼呢? 你的回答有助於樓主解決他的問題嗎?
    看你的文章數那麼高。沒想到回文的內容都是一些跟原問題無關的內容。
    這種回文方式讓你很高興嗎?

    你真的有看懂樓主所碰到的問題跟要解決的問題嗎?

    誰管你用哪種格式的換行碼? 重點是問題怎麼解決?

    你回了那了些文,是在放什麼馬後炮?

    要是你想討論『換行碼的問題』,你為什麼不另外再開一個討論頁去討論?
    回在別人『已經解決的問題』後面是在做什麼?

  10. #10
    會員 warzero 的大頭照
    註冊日期
    2003-09-15
    所在地區
    光纖 30M/10M
    討論區文章
    1,885

    回覆: linux script 用記事本等編輯過就無法 run 問題

    引用 作者:linux_xp 瀏覽文章
    題外話:

    當然期望 M$ 或 unix-like 誰去改變,都是多餘的,各有各的立場

    如果 M$ 會改變,也就不會有 .doc 這東西,也就不會有 IE only
    它市佔率是高沒錯,但終究是封閉、壟斷的格式,這是不可否認的事實

    開放的格式,是任何人都可以使用
    而封閉,甚至專利的格式,用了可是會被告的
    這是它們最大的不同點

    $ 這個符號,只說明要"錢",除此之外,貌似也沒別的意思
    個人認為將其擴大解釋成有鄙視的味道,是太過度敏感了
    也許網路上提到這個詞的人
    往往只是因為花太多錢在上面,表達一下不滿而已
    就好比口渴去投個販賣機,結果硬幣被吃掉
    難道一般人不會踢一下,說:這吃錢的鬼
    這是合情合理的情緒表現吧
    抱歉,離題一下,只是個人意見,並無意想要開戰的意思。
    或許就如 Linux_XP 兄所說,有些人只是發洩下而刻意說出 "M$" 。

    但在個人觀點來說,明明有一個正式的名稱 微軟、Microsoft 不用,刻意用那樣的外號。
    這很明顯不尊重對方的意思。就好像一個人有好好的名字,卻被一些人胡亂取了個外號的情況一樣。
    或許是開玩笑也好,都讓人覺得很不尊重對方的意思。

    如果是個人用 "M$" 本來就沒有什麼意見,不過擔心用久後就會成為流行。
    或許有一天還會誤導新人們以為 "M$" 就是 Microsoft。
    更何況現在這樣的情況已經確實發生了,有一個正式的官方網站,卻用上了 "M$" 來稱呼微軟。如果用上 "MS" 我到還覺得無所謂。
    這就顯得那些官方網站很不專業。

    他們這樣用的真正理由就不懂。
    或許想要刻意來卑視?想要來發洩他們對微軟不滿? 還是因為被影響到認為 "M$" 就是 Microsoft 的標誌?
    雖然他們的名譽變成怎樣對我來說都無所謂...
    不管什麼原因都好,都只會讓人們都覺得很搞笑。

    其實大概大部分的人都不會以中立的觀點去看待一種事物。
    就像有部分的所謂微軟派只認為微軟好,Linux 派只認為 Linux、Unix-Like 好。
    互相找出痛處來批評、比較誰的優勢好。只有這點是讓人覺得最討厭的地方。

    如果是真正喜歡玩電腦的用家,其實根本不必去考慮這些。
    能用的就用、能玩就玩、能研究的就一起研究、討論就好。爭奪什麼的本來就毫無意義。自己是覺得這樣才可以好好享受到玩電腦的樂趣。


    此文章於 2007-08-31 11:22 PM 被 warzero 編輯。

類似的主題

  1. 【軟體求助】突然打不開記事本、工作管理員...登錄編輯器也是
    作者:i29686112 所在討論版:-- HELP ME 電 腦 軟 硬 體 急 救 版
    回覆: 1
    最後發表: 2007-04-30, 01:59 PM
  2. 回覆: 8
    最後發表: 2006-02-17, 03:34 PM
  3. 【求助】2k的記事本有辦法裝在98上嗎?
    作者:ericshei 所在討論版:-- Windows 討 論 版
    回覆: 6
    最後發表: 2002-09-24, 10:35 PM
  4. 記事本有問題....
    作者:羽翔 所在討論版:-- Windows 討 論 版
    回覆: 2
    最後發表: 2002-07-17, 08:01 PM
  5. 【問題】用記事本存成htm,為何2000無法開啟
    作者:amdxp 所在討論版:-- 網 路 軟 體 討 論 一 版 (Browser,Email
    回覆: 4
    最後發表: 2002-03-22, 05:58 PM

 

此網頁沒有從搜尋引擎而來的訪客

發表文章規則

  • 不可以發表新主題
  • 不可以回覆文章
  • 不可以上傳附加檔案
  • 不可以編輯自己的文章
  •