Shell 脚本中空格的使用

Shell 脚本中空格的使用,第1张

学 Kali 渗透的时候 Shell 脚本差点把我搞疯了,不停报错。因刚刚接触 Linux 和 Shell,没有系统学过,所以很多报错都不知道怎么回事。

对着视频敲脚本,视频中空格有没有也不怎么看得出来,没想到是空格的问题。后来查才发现 Shell 对空格有特别严格的要求。

参考: shell脚本中空格的注意问题

1. =

赋值时:两边不能有空格

i=1

i=$((i+1))

比较时:两边必须有空格

if [ $a = $b ]

2. if

整数比较时:中括号前后必须有空格

if [ a -xx b ]

参考: Linux#Shell#if [ $# -ne 1 ]then 是什么意思?

看来双括号还有问题…再学吧…

1. 变量名、等号、值之间不能有空格

2. 变量的引用是用 $ 符号加上变量名

echo ${a}

变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,建议给所有变量加上花括号,这是个好习惯,既便于阅读,又不易出错。

经测试IE通过,以下代码仅供参考,有疑问请me我:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE>New Document </TITLE>

<script language="javascript">

<!--

function getCursorPsn(txb)

{

var slct = document.selection

var rng = slct.createRange()

txb.select()

rng.setEndPoint("StartToStart", slct.createRange())

var psn = rng.text.length

rng.collapse(false)

rng.select()

return psn

}

function focusEnd(obj,position)

{

obj.focus()

try

{

var rng = obj.createTextRange()

rng.moveEnd("character",position)

rng.moveStart("character",position)

rng.collapse(true)

rng.select()

}

catch(e)

{

}

}

function insertTab(obj,event){

if(event.keyCode==9){

event.returnValue=false

var position = getCursorPsn(obj)

var tr=document.selection.createRange()

tr.text = " "

tr.collapse(false)

tr.select()

focusEnd(obj,position+1)

return false

}

}

//-->

</script>

</HEAD>

<BODY>

<INPUT TYPE="text" NAME="" size="50" onkeydown ="insertTab(this,event)">

<TEXTAREA NAME="" ROWS="10" COLS="50" onkeydown ="insertTab(this,event)"></TEXTAREA>

</BODY>

</HTML>

(@@InPutSTRing @@InPutInteger) [@main] @@InPutSTRing15>[@CallInPutSTRing15] #IF ISADMIN #ACT AddTextListEx .\MapQuest_def\功能限制\禁止登陆人物.txt 0 MESSAGEBOX 该人物已被加入黑名单!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11751850.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存