shell脚本基础命令学习(一)

shell的作用是解析用户的指令,将shell指令按照特定的流程,组合形成脚本。

查看当前系统shell版本:

编写一个简单的shell脚本后,可以使用下面几种方法来执行:

1,使用chmod给脚本增加x权限,如:chmod +x test.sh

2,/bin/sh 或者 /bin/bash 执行脚本(会创建子进程)

3,source ./test.sh 脚本执行

4,小括号方式,会创建子进程

环境变量,可以直接设置,例如var=100,使用unset var可以删除

通配符:

*      匹配一个或多个任意字符

?      匹配一个任意字符

[若干字符]  匹配括号内任意一个字符

命令代换:

小括号:

算术转换:

进制转换:

转义字符和特殊字符:

条件分支:

$? 代表返回值0为真,1为假

test 或者 [] 可以作为表达示判断

gt(大于),lt(小于),eq(等于),ne(不等于),le(小于等于),ge(大于等于)

括号判断,-f是普通文件,-d是文件夹,-z判断字符串是否为空

逻辑判断:

逻辑非 !

逻辑与 -a

逻辑或 -o

如:[ -f a.txt -a -d a.txt ]

要注意括号两边的空格,如果没有会出错

if分支语句:

echo "are you boy?"
read yy
if [ "$yy" = "yes" ];then
    echo "you are a boy"
elif [ "$yy" = "no" ]
    echo "you are a girl"
else
    echo "idk"
fi

  case分支语句:

echo "are you a boy?"
read yy

case "$yy" in
    y|yes|YES)
        echo "you are a boy";;
    [nN]*)
        echo "you are a girl";;
    *)
        echo "idk"
        exit 1;;
esac

  for循环语句:

for i in x y z
do
    echo "$i"
done

  while循环语句:

echo "please input your passwd"
read yy

while [ "$yy" != "123" ];do
    echo "sorry,try again"
    read yy
done

echo "login success"

  计算1+2+3+。。。。100求和:

sum=0
i=1

while [ $i -lt 101 ];do
    sum=$[sum+i]
    i=$[i+1]
done

echo $sum

  位置参数和特殊变量:

$0             相当于C语言main函数的argv[0]
$1、$2...    这些称为位置参数(Positional Parameter),相当于C语言main函数的argv[1]、argv[2]...
$#             相当于C语言main函数的argc - 1,注意这里的#后面不表示注释
[email protected]             表示参数列表"$1" "$2" ...,例如可以用在for循环中的in后面。
$*             表示参数列表"$1" "$2" ...,同上
$?             上一条命令的Exit Status
$$             当前进程号

  函数的使用:

foo(){
    echo "$0 - $1"
}

echo "start call foo"
foo 11 22
echo "end call"

  远程文件传送补充:

scp 1.txt [email protected]:/home/ubuntu

  

时间: 2024-12-10 01:55:44

shell脚本基础命令学习(一)的相关文章

Linux shell脚本基础学习详细介绍(完整版)一

Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Linux 脚本编写基础◆1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例子中我们使用/bin/sh来执行程序. 当编辑好脚本时,如果要执行该脚本,还必须使其可执行. 要使脚本可执

Linux shell脚本基础学习详细介绍(完整版)二

详细介绍Linux shell脚本基础学习(五) Linux shell脚本基础前面我们在介绍Linux shell脚本的控制流程时,还有一部分内容没讲就是有关here document的内容这里继续. Linux shell脚本基础已经被分成好几个部分了,这里对控制流程的内容也就马上讲完了,这是最后一部分关于here document,这里举例稍微有点复杂,我们慢慢来分析这个复杂Linux shell脚本. 6. Here documents 当要将几行文字传递给一个命令时,here docu

shell脚本基础学习(转)

看到别人的学习总结,觉得不错转了过来(转自TryFly) 一.shell脚本基础 ? ?shell脚本是利用shell的功能所写的一个程序,这个程序是使用纯文本文件,将一些shell的语法与指令写在里面,然后用正则表达式,管道命令以及重定向向等功能,以达到我们所想要的处理目的.它的基本用途有: 1.自动化常用命令 2.执行系统管理和故障排除 3.创建简单的应用程序 4.处理文本或文件 ... 二.创建shell脚本 第一步.使用文本编辑器来创建文本文件 第一行必须包括shell 声明序列:#!

续写vim,shell脚本基础编辑,read命令,if与case判断语句,文件查找方式,压缩与解压,

一. Vim续写 ?1.命令扩展模式的位置定界 ??起始位置 cmd 终止位置???Cmd:????y复制????d删除????Gu变大写????gu变小写??例如:0y$命令意味着:????0 先到行头????Y 从这里开始拷贝????$ 拷贝到本行行尾最后一个字符????Ye 从当前位置拷贝到本单词的最后一个字符 ?2.扩展命令模式:地址定界 ? ?# 具体第#行,? ?#1,#2 从开头数第#1行到第#2行? ?#1,+#2 从开头数的第#1行到从第#1行开始数的第#2行? ? ?例:2,

shell脚本基础、变量

shell脚本基础 知识要点 掌握Shell脚本的基础知识 学会使用Shell变量 学会编写简单的Shell脚本 Shell脚本的应用环境 学习shell脚本的基本流程 看.想.写 shell脚本用在什么地方 编写常用系统维护工具菜单 重要的性能参数.进程和日志分析 自动实现数据备份计划 自动批量搭建特定系统环境 防火墙自动配置脚本 服务器的配置文件安全比对 对批量设备进行远程巡检 Shell脚本的组成元素 shell脚本的基本组成 声明和注释* 系统命令 文本处理工具(grep.cut.sed

关于shell脚本基础编程第四篇

shell脚本基础编程第四篇本章主要内容:函数 函数 function:             function 名称 { 命令 ; } 或 name () { 命令 ; }           定义 shell 函数.               创建一个以 NAME 为名的 shell 函数.当作为一个简单的命令启用时,           NAME 函数执行调用 shell 的上下文中的 COMMANDs 命令.当 NAME           被启用时,参数作为 $1...$n 被传递

shell脚本基础进阶(四)----作业

20150913-15作业 1.描述shell程序的运行原理(可附带必要的图形说明) shell脚本基础进阶(一)----shell介绍 2.总结shell编程中所涉及到的所有知识点(如:变量.语法.命令状态等等等,要带图的哟) shell脚本基础进阶(二)----变量及运算符 3.总结课程所讲的所有循环语句.条件判断的使用方法及其相关示例:(if (jpg|png is not exist):echo "You say a XX") shell脚本基础进阶(三)----流程控制语句

Linux运维之道之ENGINEER1.4(shell脚本基础)

ENGINEER1.4 SHELL脚本基础 认识shell环境 bash shell的使用方式 交互式: --人工干预,智能化程度高 --逐条解释执行,效率低 非交互式: --需要提前设计,智能化难度大: --批量执行,效率高: --方便在后台及悄悄地执行: 什么是shell脚本:提前设计可执行语句,用来完成特定任务的文件 --解释型程序 --顺序,批量执行 规范shell脚本的一般组成: #!环境声明 #注释文本 可执行代码 ----------------------------------

Shell脚本基础(一)

前言:随着Linux系统在企业中的应用越来越多,服务器的自动化管理也越来越变得重要,在一些复杂的Linux维护工作中,大量的重复性的输出和交互式操作不但费时费力,而且容易出错,所以Shell脚本,可以批量处理,自动化完成一系列维护工作,大大减轻管理员的负担. 一,Shell脚本基础知识1,编写第一个shell脚本1),vim first.sh[[email protected] ~]# mkdir /shell //创建一个shell目录[[email protected] ~]# vim fi