当前位置 : 主页 > 网络编程 > 其它编程 >

Linuxshell编程入门

来源:互联网 收集:自由互联 发布时间:2023-07-02
1.第一个shell脚本创建一个test.sh文件,并书写下面内容#!binbashechoHelloWorld!#! 1.第一个shell脚本 创建一个test.sh文件,并书写下面内容 #!/bin/bash echo "Hello World!" "#!" 是一个约定的标记,它告诉
1.第一个shell脚本创建一个test.sh文件,并书写下面内容#!binbashechoHelloWorld!#!
1.第一个shell脚本

创建一个test.sh文件,并书写下面内容

#!/bin/bash

echo "Hello World!"

"#!" 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell。

echo命令用于向窗口输出文本。

2.运行shell脚本

1.作为可执行程序

chmod +x ./test.ch 使脚本具有执行权限

./test.ch 执行脚本

2.作为解析器参数

/bin/sh test.ch

/bin/php test.php

这种执行方式不需要写#!/bin/bash,写了也没有

3.变量

首个符号必须是字母

中间不能出现空格,可以使用下划线(_)

本能使用标点符号

不能使用bash里的关键字(可以使用help查看保留的关键字)

you_name = "hello world!"

for file in `ls /etc`

使用变量

echo $you_name

echo ${you_name}

echo "hello $you_name"

获取字符串长度 ${#you_name}

提取子字符串 ${you_name:1:4}

查找子字符串 `expr index "$you_name" is`

Shell数组

array_name = (value0 value1 value2 ...)

array_name[n] = valuen

读取数组

value = ${array_name[n]}

使用@符号可以获取数组中所有元素

echo ${array_name[@]}

获取数组的长度

length = ${#array_name[@]}

length =${#array_name[*]}

获取单个元素的长度length =${#array_name[n]}

注解 #

4.执行脚本传递参数

./test.sh 1 2 3

脚本中使用传递参数 $1 $2 $3 ... $n

$# 传递脚本的个数

$*、$@ 以一个字符串显示所有传递参数

$$ 脚本运行的当前进程ID

$! 后天运行的最后一个进程ID

$- 显示Shell使用的当前选项

$? 显示最后命令的推出状态,0表示没错误,其他值都表示有错误

5.运算符

算数运算符 + - * / % = == !=

val = `expr 2 + 2 `

echo "两数的和 $val "

关系运算符 -eq -nq -gt -lt -ge -le

布尔运算符 !(非) -o(或) -a(与)

逻辑运算符 ;模式2) command1 command2 ... commandN ;;esac

break 跳出循环

continue 终止当前循环,进行下次循环

9.函数

定义

函数名(){code [return int]}

调用函数名()

函数参数

#!/bin/bashfunWithParam(){ echo "第一个参数为 $1 !" echo "第二个参数为 $2 !" echo "第十个参数为 $10 !" echo "第十个参数为 ${10} !" echo "第十一个参数为 ${11} !" echo "参数总数有 $# 个!" echo "作为一个字符串输出所有参数 $* !"}funWithParam 1 2 3 4 5 6 7 8 9 34 73
10.输入输出重定向

命令 说明 command > file 将输出重定向到 file。 command > file 将输出以追加的方式重定向到 file。 n > file 将文件描述符为 n 的文件重定向到 file。 n >> file 将文件描述符为 n 的文件以追加的方式重定向到 file。 n >& m 将输出文件 m 和 n 合并。 n <& m 将输入文件 m 和 n 合并。 <
11.文件包含

#!/bin/bash# author:W3Cschool教程# url:www.w3cschool.cn#使用 . 号来引用test1.sh 文件. ./test1.sh# 或者使用以下包含文件代码# source ./test1.shecho "W3Cschool教程官网地址:$url"

$ chmod +x test2.sh $ ./test2.sh W3Cschool教程官网地址:http://www.w3cschool.cn

上一篇:Tomcat上文件的绝对路径访问笔记
下一篇:没有了
网友评论