shell指令碼 空格

2022-07-28 22:12:24 字數 1139 閱讀 8991

eg:

gender=femal————right

gender =femal———–wrong

gender= femal———–wrong

eg:if [ $gender = femal ]; then——-right.

echo 「you are femal」;

fiif[ $gender...-----------------------wrong

if [$gender...----------------------wrong.

eg:if [ $gender = femal ]; then——-right.

if [ $gender= femal ]; then——–wrong.

if [ $gender=femal ]; then———wrong.

eg:if [ $gender = femal ];then——-right.

if [ $gender = femal ]

then——————————-right.

if [ $gender = femal ] then——-wrong. then前面少了 ; 號.

提示出錯資訊:

syntax error near unexpected token then

同理,還有很多出錯資訊 比如

syntax error near unexpected token fi 等都是這樣引起的.

不然提示出錯資訊:

syntax error near unexpected token else

1)if 語句後面需要跟著then,同時前面要有分號;

2) 空格非常重要,shell 會認為空格前的為乙個命令,如果a=3 認為是賦值操作,如果寫成a = 3,那麼就會認為a為乙個命令 this=ls -l |grep 『^-' | wc -l

3) 操作符之間要用空格分開 ,如 test ! -d $1,其中的!和-d就要用空格分開

空格是命令解析中的重要分隔符

if [ -x "/workspace/shell/a.sh" ];then

只有 -x 後有空格才表示緊跟其後的字串是否指向乙個可執行的檔名,否則就成了測試 -x"/workspace/shell/a.sh" 這個字串是不是空。

shell指令碼的空格

基本語法 shell的if語法和c語言等高階語言非常相似,唯一需要注意的地方就是shell的if語句對空格方面的要求比較嚴格 其實shell對所有語法的空格使用都比較嚴格 如果在需要空格的地方沒有打上空格,都會報錯。如if 1x ip x then echo abc fi中少乙個空格都會報錯。另外s...

shell指令碼,去除空格與數字

本人最近在學習shell指令碼,資料中有很多例項,不過格式都是行前有數字,還會有空格,編輯起來很麻煩,就想到用shell指令碼處理 原檔案 1 bin bash 2 從 etc fstab 中讀行 34 file etc fstab 56 file 1011 echo first line in f...

初學shell指令碼程式設計注意空格問題

shell程式設計就是利用shell的功能所寫的乙個程式,這個程式是使用 純文字檔案 將一些shell的指令寫在裡面,然後用正規表示法,管道命令以及資料流重導向等功能,以達到我們所想要的處理目的。我們使用到shell有bash,sh,csh,ksh常用的是bash。我們舉個例子來說吧 bin bas...