第一次學(xué)shell編程,看的文章中說shell程序必須以"#!/bin/sh"開始,也就認(rèn)為是這樣了,雖然知道在shell中以"#"開始的語句
都是注釋,但也從沒認(rèn)為"#!/bin/sh"也是注釋,就像對C語言程序必須有main函數(shù)一樣毫無懷疑。
但前些時(shí)候又聽 說"#!/bin/sh"也
是 注釋,可有可無,當(dāng)時(shí)覺得真是一個(gè)失敗,連基本的語法都分不清。
前幾天借了一本書,才真正認(rèn)識了"#!/bin/sh"。
shell編程是以"#"為 注釋,但 對"#!/bin/sh"卻不是。"#!/bin/sh"是對shell的聲明,說明你所用的是那種類型的shell及其路徑所在。如果沒有聲
明, 則腳本將在默認(rèn)的shell中執(zhí)行,默認(rèn)shell是由用戶所在的系統(tǒng)定義為執(zhí)行shell腳本的shell.如果腳本被編寫為在Korn
shell ksh中運(yùn)行,而默認(rèn)運(yùn)行shell腳本的為C shell csh,則腳本在執(zhí)行過程中很可能失敗。所以建議大家就把"#!/bin/
sh"當(dāng)成C 語言的main函數(shù)一樣,寫shell必須有,以使shell程序更嚴(yán)密。
Linux環(huán)境下。 shell腳本有沒有后綴都可以執(zhí)行,文件的打開和后綴名沒關(guān)系~只和文件類型有關(guān)系~
簡單來分就是文本文件和二進(jìn)制文件,前者用VIM可以打開。當(dāng)然還有別的文件類型如塊文件等,建議看看基礎(chǔ)方面的書
都是注釋,但也從沒認(rèn)為"#!/bin/sh"也是注釋,就像對C語言程序必須有main函數(shù)一樣毫無懷疑。
但前些時(shí)候又聽 說"#!/bin/sh"也
是 注釋,可有可無,當(dāng)時(shí)覺得真是一個(gè)失敗,連基本的語法都分不清。
前幾天借了一本書,才真正認(rèn)識了"#!/bin/sh"。
shell編程是以"#"為 注釋,但 對"#!/bin/sh"卻不是。"#!/bin/sh"是對shell的聲明,說明你所用的是那種類型的shell及其路徑所在。如果沒有聲
明, 則腳本將在默認(rèn)的shell中執(zhí)行,默認(rèn)shell是由用戶所在的系統(tǒng)定義為執(zhí)行shell腳本的shell.如果腳本被編寫為在Korn
shell ksh中運(yùn)行,而默認(rèn)運(yùn)行shell腳本的為C shell csh,則腳本在執(zhí)行過程中很可能失敗。所以建議大家就把"#!/bin/
sh"當(dāng)成C 語言的main函數(shù)一樣,寫shell必須有,以使shell程序更嚴(yán)密。
Linux環(huán)境下。 shell腳本有沒有后綴都可以執(zhí)行,文件的打開和后綴名沒關(guān)系~只和文件類型有關(guān)系~
簡單來分就是文本文件和二進(jìn)制文件,前者用VIM可以打開。當(dāng)然還有別的文件類型如塊文件等,建議看看基礎(chǔ)方面的書