shell脚本

shell脚本程序:以文件形式存放批量的linux命令集合,该文件能够被shell释放执行。通常由一段linux命令、shell命令、控制语句以及注释语句构成。
shell脚本特点:
  • 第一行需指定用哪个程序来编译和执行脚本,如#!/bin/bash 或者#!/bin/sh
  • 通常shell脚本以.sh为后缀
shell脚本执行权限:
  • 有执行权限,可以./filename.sh
  • 无执行权限,可以sh filename.sh
变量与引用
定义变量
  • 定义变量时变量名不加美元符号
  • 注意等号两边不能有空格如:name="wujiadong"
  • 变量名不能以数字开头
  • export命令可以使变量用于子进程
  • 变量赋值时,若值中有空格,必须使用双引号括起来
使用变量
  • 使用一个定义过的变量,只要在变量名前加美元符号。
  • 显示变量:echo $name 或echo ${name}
  • 清除变量:unset name

实例1

test11.sh

 #!/bin/bash
v1="feigu"
export v2="wujiadong"  #export命令可以使变量用于子进程 echo "显示v1:$v1"
echo "显示v2:$v2" sh test12.sh

test12.sh

 #!/bin/sh
echo "引用变量v1:$v1"
echo "引用变量v2:$v2"

执行sh.test11.sh

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAArQAAAB2CAIAAAC245cbAAARi0lEQVR4nO3dzW/kxpnA4f6LvIGJRXLZ28LIZoEECIJFS8sEkTQaTYwYAby2Ad94XmQRIMgpt4B7Gzv2GIgnwRhBEod2EH/BGntt62M8kqalkXo0Uktqfc5i99Ds7mLxrWKxmz1kd/8e8GA3WcUSHeR9WVWsqv3m99Hde9vf+teZ27dvn8PZ7du3G41G7dX3av+5wVHM8ep7jUZjyP8ddv67AACGUfv17/726frOP/7LLMlBLiQHJAcAMKlqv3rrg4/XHj777X+vvfoexyBH6TF1Yo7S/1NycHBwcHSOX7z58Ueru9947oflxwYODg4ODg6OKhw/f2P5w9XmM8/9qPymcHBwcHBwcFTh+Pmbn3+4+uiZ535cflM4ODg4ODg4qnD8160vP1rb/4dvz9cAAABqtdov31775OuDZ79zreyGAACAavj1nfvLG61vfvd62Q0BAADV8N/vNr54cPxP3/9J2Q0BAADV8MYHe6sP2/9c/2nZDQEAANXwh7uP7zfPvuP/rOyGAACAavjzV0dbj8+/9+MXy24IAACohr/dO9k+vPjBwn+U3RAAAFANH260H7Yu/23xJdtFfhgFXnH39MNGo9AKnxoviDp7UoR+7rODGd9nBQAYW59stndbl/XrY5YcjC5mmmv2w0Yj9DspQDr828+OoDkAAIzIp1vHe0cXM9cNwwq9l+EiX4jHNDmI2cM/yQEAYOwtbx42j85nrksTEnuBLu45yNeB4IcNQ14RB7z+BTmqTdRqyFpsGY29VVk192ovODkYzbMCAGAgyxuPmq2zmUXhU8Z+nMs/rKC/8CZqiCNdHAS9IMof8uyd//34mv43Y6sya44VnhyM+lkBAJDP8v2dZqtdv/aCcK4XtXInB/YIm4zYA71sm26Q/l35xamL/qknByN/VgAA5LN8b6vZOq4vPC+d7PfP50wO4oKGKJZ+Vc59A0MRL4hSP8czBTNb5dqYopODkT8rAADyWV6/1zxs1ReWzJcoQ/g5wlJi4F8cRzf+uwNDEXHegHp7S6tcGzOCOQejfVYAAORzd221ediqzy/aLuoMKww64N2J2ErIe7o9B66tcm3MSL9WGMWzAgAgn7trXzUPD+tz12wXxXMOcoRevXwioo0uOVDGEAato+xPGYt/VgAA5PPZ2hfNw4P63EL6lBdEvZl8UeDliUt+mOftd4CAZ+7F0Gbw1Wp+qExItLQqs2b1gsGSA7G3YuTPCgCAfD5b++LR4UF9bl48mxwMzxWU1OF/rWAhAU9tmm2dg2TNllZl1pysVq/Cfla9uzyUMcpnBQBAHp+vfWlJDmIFL58MAAAq7PP1TnIgDCv0kRwAADA9Pl9feZQ5IREAAEyP//l6/VEr61NGAAAwPb64v7HfOrYuggQAAKbJl1vb+0dtw/LJAABg+nzVaD4+Pp0RN14CAABTaGX74PHJ+cx1YcvmPs+zfavg+8PsEjhcaQAAULTVh8ePTy5mrr9ou8i0n1HWekLCwkB5ipv1Kh7N7sXK35vzBmypDAAYf2u77YP25czSS7aL+gspi+eGjob2ngldvH/CyOLwMIsQkhwAAMbf+t75Qftqdull20VZPQClRMNRxWHiOwBgyq03Lw7aV7M3spKDkfYcJPoOhOAsvssXHsTFFCh5g8Ql6TbacqX++Sjw1aazewIAoGLuNS8OT69mb7xiuyh3cuA62SChe4tU1JfD5VPvOUju95ja/dFW2NOzgQbJAQCgsr5+dHl4+iQjOciakOgeom39DP3eg3hWgfJvpr2Vn15ykG6F1C65sHZlJ3UiOQAAVNTX+w7JQZcat5IBPKuY2isQ+rVazQsCS2G1clOwNCcHXhANEV/ler0gSlUpPAKxcKpsqiOB5AAAUCH25MALIq1/Pwr9XnIQRd0A33kXlkOaHzYaURh2LlV6DuR+eaVQ55wxVpqSg2E/czS//Dt0moiFU38CyQEAoMru71+2rD0HagxXugDUf1Z/loorwVIfVjBGwm45c6h8usMKUs+Ba2F6DgAAY+X+/kUrY0Jiv5deSg5smUF6hoEw58APxU6HTnZgiZQlzDnIvtsAcw601GG4MREAAIa3EScHGZ8yhoFXE5KDIDQHTPETB3FCojzA0O3INwVKY3IQjysMmjc4fq1QE/OiAb5WSNQbt53kAABQos1OciAtgpS5aHKaNOiQqlMIvH4o/ijHSeE7ycRFcbtHschh8tbKHcRnJbWq0V3nQB9J6BVhWAEAULLN/bPW6VXG8sm5abspJUIniw8yrQAAUGmb++3W6WXGxksYlh/2kwFmFQAAqm3z0VHr9CJjy2YMTx2RIDMAAFTZZvOg1T6fufZC2Q0BAADVsLW3f9Q+qy88X3ZDAABANWztNY/ap/WFpbIbAgAAqmFr9+FRu12fXyy7IQAAoBq2dneO2u363DXbRf39EiXad4s5DVcaAAAUbWt3+6jdrs8t2C7KXA7JtsKxg5yz95PNqdi6CbY1DIpY8XlUq0YDAND1IE4O5m0XiSsh988NHavsPRNJ2lYMlVs0gOQAADDuHuxuH7skB9Y3/6cZq/zAbTuDSTVlfy4AoASNvZ3jzGGFUfccJPoOhOhnX27Ybb/EjPsbdmTu/Z65sbJ9kSNlJERsqn2BaX1fhuQVidRNaGNi54ZcNQMAplNj7+Fx9oTEvMmB62SDhO4tUtlBdm4w/LiCnGH0m5KZHLg0x7wbtPKjvvmjdUdHfVglUTh5cXoAxl4zAGBqbTf3jk9PMz5lzJqQ6B5RbP0M/d6DZKS2Rn95u+f85Ljdb8gokwPrVVp9nbTLdDb5i/Zs9LvbawYATK/tR/snp2eOiyCp4SRHZ76yf3MvOfCCwFJYrdwSbQ3xbKBJiv2Bhf4NlcGG0SYH6Z6W7lWp8Y5EHcJoiHLe3mZ7zQCAKbazf3Bydm5aPtkLIq1/Pwr9XnIQRYESpEwx0Q8bjSgMO5cqPQfWd37zK3vyGtNQwAA95N1bKn+LkqOMMDnQc5lUb799LEC/mWtvh71mAMAU23l8dHJ2MbNo3HhJDcFKF4D6z+rPUnFtAN1pOkG3nOmCooYTklVGgecFURT4QRTP5DOF4eKSg5x9A/QcAABG7eFB++T80rplc//NVkoObJlBeoaBMOdAW7hA/Tn05VBrKDIkL4gaURhGUeDVvCCKwlCJnlooNY9c5E4O9AL2WQV55xxYEhrmHAAAZLuHZ+3zq5nrL9ou8oKwOxqfTA6C0BxNxE8cxAmJci9Adxak1G1uDWLxuEL+MNepuT/xIFGJ2sj4DgUNKyT+/O6giGEeYe6vFWy9HXytAAAQ7bYu2udXM0svpU9lLpqcJg06pOoU4o8fij8KEdjwkaQeAwfrWdCGULSmJtYLyDWsID7J1Et7I47O6RRiuHUObE3Ta67SWpMAgLLsHl22z5/MLr1caK3abkr2JX4mSzHLLpRhfFsOACjW3tFV+/zJ7I1ik4PpNVYR1g8rvEkFAKA0e0dX7YsnszdeKbsh403p2h+rAGtf9BkAMJ32jkkOAACAguQAAAAkNE+etC/+l+QAAADESA4AAEBCARMSfeNKSJ7vO8xxs+/B1LtI/7w/83rz1ba9IQEAmHY7rcsTy6eMxoWQtK1/5VhrWLHIXp2RsJFAzbjcUtat+5tG5THopk4AAIyRBweXR2dXuRZB0tdFNu+uIO+koP2SusiUkMR7HqTTCmmhZnHxZqeTRvHqjuxPBACYcO+vt7YPz8Xlk01GnRyo5zxPv8S20ZOlkc63dKmZ5AAAMMne+nh7fbdt23hJfJFXg6M5Dg+ZHHS6CTrbKGvJQe+UqdX2YQVlP6XeQs9C0BeXOyQ5AABMuDf+vr76sGXZsjn7LdueHDgRbqDOMDD1HKT2Xxxgr6h+jpGK+vJSyCQHAIAJ99v3P1vdeTyz+ILhvEMPvDU5EDYodOg50ApahxXE+ZDWjxWMTU7uGWnYJoHkAAAw4V5/94PVxl594Xn5tLjFsvbZQNHJQRz+XXoBzDE6u3RWdmDaQsmcHLB3EQBgIrz2p7+sPtipLyyJZz3P87xAiLNRGPSWMDAnB869/InOfF8PvH4odAx0vhzwTJE489Zyk/vZgXF7RVNywGeOAIAJ8dof76xsNerzi+5F9Fd9Y3IgDRjk+1pBLOW0K7J2n/Q4hSWfCX3bTRhWAABMuJvvvL2ytVmfu+ZcIhXMjZFWWjpxsOSgpn6l4PglY47OCu0+jdC3JCAkBwCACXfzzlsrmxv1uQXXAunwbEoO/FCe6j9YchCPFAw4pJ9qoziZon8by52MyUHq2wkAAMbSzTu3VjY36nPz1qv8oBsphaAqJwfy9wIDJQdq1O12CdhKuE5l7P9VQnHDN4yWiQvxbZmRCAAYc27JgRIY3XY38IIwYxqCGmoNkd72Dq8nAPE1gyx0QDQHAECVe1jBidt2jIayvayBDnoAAEpw8523V7a28kxIBAAAE22ATxkBAMAksy+CBAAAps7rf7UunwwAAKZN1sZLAABgymRu2ZxNWgixw+2jBS8Isj9LyLsuoXVbRud1lwAAmEJvftRY2z2Zuf6ifNq4boASW8U9k2u1mssixkJ1RvLSydIqCw63jiKHjCR9q5xNfopsO04UseIzq0YDwPR485Pm2t7pzNJL7kX0FREN4bkmvqG7bdlsXKwoHfNDX1yi0by1UtZJA23x5sptz0xyAAAoyq1PD9f2zmeXXnYvMurkQD3X2ZJZvcR8N2sjnW9pklprecqi5ZT9uQAw1W4tH601z2dvmJMD8UXeacvmYZODTjdBvBdjMjnonTK12j6soOz/7PtqiWRD7JtDm/ducmfaZbL3u96EVJPUP1QcdLEOgyT+40pbaPZq9lOPJ/GIhTaqpc3tkmoGAJTr1vLxWvNi9sYrpguc9kWy7W7swrBFU7daU89Bah/EQbZW6MWuVHaQnRsMP64gZxj9pmQmBy7NMbz1JxM1fepIolD8YPuntWGVROHkxekBGHvNAIDS3bp7Yk0OHHrgrcmBfsat50AraB1WEOdDWj9WMDY5Gamt0d88CzMfOW73GzLK5MB6lVZfJw8znU3+oj0b/e72mgEA5ctIDsQXW60vvOjkIA7/rhsvmxvu1F9g/HMt0dYQzwaapNh/mP0bKg94tMmBOL9Ta5ZUhzAaopy3t9leMwCgAuzJged5nhcIcTYKA1/5f3tDVHLu5U905vvp92ihY6DznYJn6/TPnRvYXtm1qg1DAfof46B7S2UahZKjjDA50HOZVG+/fSxASPuckgN7zQCACsgaVhDor/rG5EAaMMj3tYJYymmwX7tPepzCks+EvvkmRQ0nJKvsTLGMAj+I4pl8pjBcXHKQs2+AngMAmB6ZExJTUsHcGGmlpRMHSw5q6lcKjl8y5uis0O7TCH051GprHRTEC6JGFIZRvI5DFIbK35gewikqOdAL2GcV5J1zYElomHMAAFWX/SmjJh2eTcmBH6Z/FjIB50UHhgnNqTaav0PsDkhI3ebWIJb6dsJVp+b+xINEJWpXRXyHgoYVEp0g3WzKMI8w99cKtt4OvlYAgIpzWwSpvwKQEFTl5ED+XmCg5ECNuukgJrTWcSpjal0jtbjUa56mx8DB0hc1tKbHLRLrBeQaVhAfROqlvftA0inEcOsc2Jqm11x4dwwAYAiOyyf3A4HY2Z760QvCjGkIycAk3tT0Dq+e04LTIAsdTEZgKmbZhTKMb8sBYFJlbLw0ILftGA1le1kDXc3uxirCqgNOA33/CQAYqQK2bEZ5lP6XsQqw9kWfAQDl+u37n63uPJ5ZfKHshgAAgGp4/d0PVht79YXny24IAACohtf+9JfVBzv1haUiK/0/6wEAAKrstT/eWdlq1OcXi6yU5AAAgPF18523V7Y263PXiqyU5AAAgPF1885bK5sb9bkF20XSWoc2JAcAAIyvm3durWxu1OfmbReRHAAAMD0ykoPEErnOixKRHAAAML5swwq9xfbjngPnDgSSAwAAxtb/A5Nq7nEqmQ0zAAAAAElFTkSuQmCC" alt="" />

控制结构
判断
test -e filename 表示是否存在
-e 是否存在 
-f 是否存在且为档案(file)
-d 是否存在且为目录(directory)
 
-r 是否存在且有可读权限
-w 是否存在且有可写权限
-x 是否存在且有可执行权限
 
两个数之间判断 :test n1 -eq n2
-eq 两数值相等(equal)
-ne 两数值不等(not equal)
-gt n1大于n2(greater than)
-lt n1小于n2(less than)
-ge n1大于等于n2(great than or equal)
-le n1小于n2(less than or equal)
 

判断字符串的数据

test -z string 判断字符串是否为0,string为空字符串,则为true
test -n string 判断字符串是否非为0,string为空字符串,则为false。注:-n可省略
test str1 = str2 判断str1是否等于str2,若相等,则回传true
test str1 != str2  判断str1是否不等于str2,若相等,则回传false

if else

if 条件
then 命令
fi 或者 if 条件
then 命令1
else 命令2
fi 或者 if 条件1
then 命令1
elif 条件2
then 命令2
else 命令3
fi 注意:这里elif是else if的缩写,但不支持else if的写法

最新文章

  1. centos 安装 apache2.4
  2. Hadoop笔记
  3. NOIP水题合集[3/未完待续]
  4. 如何在IE8设置透明背景
  5. 【转载】Securing Kibana + Elasticsearch
  6. 重新想象 Windows 8 Store Apps (65) - 后台任务: 音乐的后台播放和控制
  7. 战胜忧虑<5>——运用亚里士多德法则
  8. asp.net C#数据导出Excel实例介绍
  9. 第二部分 Nhibernate中的类型
  10. 基于hash的文档判重——simhash
  11. React实现动画效果
  12. Spring Cloud Eureka Server高可用注册服务中心的配置
  13. 文件去除git版本控制
  14. 划分树(poj2104)
  15. sed语法
  16. tiled卷积神经网络(tiled CNN)
  17. SpringBoot(十六)-- 使用外部容器运行springBoot项目
  18. MS11-050安全漏洞
  19. vue 表格导出excel
  20. @RequestMapping 介绍

热门文章

  1. java中通过配置文件的方式(Jedis驱动)使用Redis
  2. Linux - Ubuntu Server基础
  3. Convert.ToInt32(string '000000003') 变成了 3
  4. springboot之修改内置tomcat配置项
  5. 让vs只启动自己想调试的站点
  6. 转载:阮一峰 理解RESTful架构
  7. OpenCV3计算机视觉+python(三)
  8. android学习三---创建第一个程序
  9. Oracle学习笔记—connect、resource和dba三种权限(转载)
  10. bolg项目