Shell脚本编程之判断语句
一、单分支if语句格式:if 判断条件;thenstatement1statement2...fi二、双分支的if语句格式:if 判断条件; thenstatement1statement2...elsestatementN...fi使用一个以前用过的脚本来说明这个结构。三、多分支if语句格式:if 判断条件1;thenstatement1...elif 判断条件2; thenstatement2...elif 判断条件3; thenst...
2024-01-10shell脚本编写俄罗斯方块
网上看到的一个用linux的shell脚本写的俄罗斯方块。共享一下。原作者信息在脚本的注释中有。下载地址:点击下载代码:#!/bin/bash # Tetris Game # 10.21.2003 xhchen<[email]xhchen@winbond.com.tw[/email]> #APP declaration APP_NAME="${0##*[\\/]}" APP_VERSION="1.0" #颜色定义 cRed=1 cGreen=2 cYellow=3 cBlue=4 cFuch...
2024-01-10shell脚本杀死侦听端口3000的进程?
我想定义一个bash别名,以kill3000自动执行以下任务:$ lsof -i:3000COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEruby 13402 zero 4u IPv4 2847851 0t0 TCP *:3000 (LISTEN)$ kill -9 13402回答:alias kill3000=”fuser -k -n tcp 3000”...
2024-01-10Shell脚本编程之逻辑运算符
1.逻辑运算符;逻辑运算符实例:a=10b=20if [ $a != $b ]then echo "$a !=$b:a != b"else echo "$a !=$b:a = b"fiif [ $a -lt 100 -a $b -gt 15 ]then echo "$a 小于 100 且 $b 大于 15 : 返回 true"else echo "$a 小于 100 且 $b 大于 15 : 返回 false"fiif [ $a -lt 100 -o $b -gt 100 ]then echo "$a 小于...
2024-01-10shell脚本之十四:企业案例
十四、企业实战案例(一)使用for循环在/oldboy目录下批量创建10个html文件,其中文件名包含10个随机小写字母加固定字符串0ldoby。思路分析,产生随机数字方法:①核心是创建10个随机小写字母。方法1:echo $RANDOM 范围是0-32767openssl rand -base64 100方法2:date +%s%N方法3:head /dev/urandom/cksum方法4:uu...
2024-01-10shell脚本编程练习[操作系统入门]
转至:http://www.178linux.com/884061、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态在线的主机使用绿色显示不在线的主使用红色显示#!/bin/bash#for i in {1..254};doif ping -c 6 -w 1 192.168.1.$i &> /dev/null;thenecho -e “33[32m 192.168.1.$i 33[0m is up”elseecho -e “33[31m 192....
2024-01-10shell脚本启动或关闭应用进程
开篇本文讲述的是通过 shell 脚本管理服务器 上的应用程序,即启动或关闭应用程序。现应用在公司的一个 flask 项目上,可以保证功能可用,但不能保证这是最优解。因为我也并非运维人员,整个脚本也是对着 shell 语法,一点一点拼出来的,完整脚本直接看文末即可。正文单独用命令管理应用程序...
2024-01-10Shell入门01
什么是Shell是命令,类似于windows的Dos通过编写shell命令发送给linux内核去执行,从而达到操作计算机硬件(cpu、内存、磁盘等)。所以shell命令是用户操作计算机硬件的桥梁shell是一门程序设计语言,包含有变量、函数以及逻辑控制语句什么是Shell脚本就是一个文本文件,通常是以.sh为扩展名文件...
2024-01-10第九周shell脚本编程练习[操作系统入门]
转至:http://www.178linux.com/888381、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现;2、写一个脚本(1) 获取当前主机的主机名,保存于hostname变量中;(2) 判断此变量的值是否为localhost,如果是,则将当前主...
2024-01-10Shell脚本深入教程(1):快速入门
Shell脚本基础入门Bash注释Bash只支持单行注释,使用#开头的都被当作注释语句:# 整行注释echo hello world # 行尾注释通过Bash的一些特性,可以取巧实现多行注释:: '注释1注释2': <<'EOF'注释1注释2EOF____='注释1注释2'但是,别闲的蛋疼去用取巧的多行注释,安心用#来注释。Bash基本数据类型Bash...
2024-01-10Bash脚本编程之数组
数组简介在bash脚本编程当中,变量是存储单个元素的内存空间;而数组是存储多个元素的一段连续的内存空间。数组由数组名和下标构成,如下。ARRAY_NAME[SUBSCRIPT]数组按照下标的类型可分为两种:索引(indexed)数组:下标为0、1、2等非负整数。关联(associative)数组:下标为用户自定义的字符串...
2024-01-10磁盘管理及shell脚本编程练习[操作系统入门]
转至:http://www.178linux.com/884051、创建一个10G分区,并格式为ext4文件系统a) 要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl;~]# mke2fs –t ext4 –b 2048 –m 2 –L MYDATA /dev/sda3b) 挂载至/data/madata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳;~]# mount ...
2024-01-10来自shell脚本的Java程序中的输入值
我想知道是否有从sh脚本到Java程序中的输入值的方式。例如我有一个program.jar。我做java -jar program.jar它输出:来自shell脚本的Java程序中的输入值Enter your name: 是否可以编写一个脚本sh这样的:java -jar program echo name 其中name的会是该程序的输入?回答:为了呼应数据到你的Java程序从壳做这样的事情...
2024-01-10Bash脚本编程学习笔记08:函数
官方资料:Shell Functions (Bash Reference Manual)简介正如我们在《Bash脚本编程学习笔记06:条件结构体》中最后所说的,我们应该把一些可能反复执行的代码块整合起来,避免反复编写使得代码过于臃肿。函数正是为了解决这个问题而存在的。函数在定义时,可以将常用的代码整合为一个整体,当我们...
2024-01-10Shell脚本杀掉除自己外的旧进程
Shell脚本杀掉除自己外的旧进程在写后台Shell脚本的时候,这是比较常见的一个需求。比如之前运行了一个叫做a.sh的脚本在后台运行,后来更新了a.sh脚本想重新运行,但却不想手动杀掉已经存在的后台a.sh进程。命令其实非常简单:kill $(pgrep -f "${0//./\.}" | grep -v $BASHPID) &>/dev/null其中pgrep -f $0 | grep -v $B...
2024-01-10Bash脚本编程之算术运算
简介Bash所支持的算术运算和C语言是一样的,这里指的是操作符(operator)以及它们的优先级(precedence)、结合性(associativity)和值,详见Shell Arithmetic (Bash Reference Manual)。注意:如果乘号“*”在某些场景中失效,有可能是它被解释成了通配符,可尝试对其转义。1+2=3在上面这个简单的算术运算中,1...
2024-01-10Java程序调用带参数的shell脚本返回值
Java程序调用带参数的shell脚本返回值首先来看看linux中shell变量(\(#,\)@,$0,$1,$2)的含义解释变量说明:$$ Shell本身的PID(ProcessID)$! Shell最后运行的后台Process的PID$? 最后运行的命令的结束代码(返回值)$- 使用Set命令设定的Flag一览\(* 所有参数列表。如"\)*"用「"」括起来的情况、以"$1 $2 … $n...
2024-01-1017 个实用 shell 脚本,建议收藏!
1、服务器系统配置初始化#/bin/bash# 安装系统性能分析工具及其他yum install gcc make autoconf vim sysstat net-tools iostat iftop iotp wget lrzsz lsof unzip openssh-clients net-tool vim ntpdate -y# 设置时区并同步时间ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeif ! crontab -l |grep n...
2024-01-10Shell脚本编程实践——指定某个目录删除文件
通常,在Linux系统中我们需要经常删除一些临时文件或者垃圾文件,如果我们通过手动一个文件一个文件的删除那会相当麻烦。 最近也正在学习shell脚本编程,因此自己试着写了一个用来指定目录删除文件的应用。 该脚本的功能是: 首先指定要删除的文件所在的目录;然后选择要删除的方式,是...
2024-01-10Bash脚本编程之字符串处理
简介其实这里说得字符串处理,对应的是bash官网中的【Shell Parameter Expansion】,不过直接去看这部分内容实在是太难以理解了。就按照马哥所说的字符串处理会比较好理解,平常使用应该也是足够的了。字符串切片这块在上一篇讲解数组的文章中,也大概提到了Shell Parameter Expansion除了可以对数组(arr...
2024-01-10Bash脚本编程学习笔记06:条件结构体
简介在bash脚本编程中,条件结构体使用if语句和case语句两种句式。if语句单分支if语句if TEST; then CMDfiTEST:条件判断,多数情况下可使用test命令来实现,返回值为0的话则执行CMD,否则就离开该条件结构体,脚本继续往下执行。[root@c7-server ~]# cat test.sh#!/bin/bashif id zwl &> /dev/null; then echo "User zwl...
2024-01-10Bash脚本编程学习笔记07:循环结构体
本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文《Bash脚本编程学习笔记03:算术运算》中我有说明不要使用,不过自己忘记了。大家还是尽量使用其他的方法进行算术运算。简介Bash具有三种循环结构:for循环。while循环。untile循环。在使用...
2024-01-10为Bash脚本编写注释
编写Bash脚本时,始终使代码简洁且易于理解始终是一个好习惯。可以通过多种方式组织代码,缩进,给变量和函数提供描述性名称。提高代码可读性的另一种方法是使用注释。注释是在shell脚本中编写的易于理解的解释或注释。将来在您的代码中添加注释到Bash脚本将节省大量时间和精力。假设您要更...
2024-01-10如何从Java程序中异步运行Shell脚本
我想从Java程序中异步运行Shell脚本-即在Java程序开始执行该Shell脚本之后,它会继续执行其他操作-并且仅当Shell脚本返回对其的响应时才做进一步的工作..即,它不会显式停止并等待shell脚本的响应。这可能/可行吗?如何实现这种功能?基本上,我将使用一个将管理所有这些服务器的服务器来监视多个...
2024-01-103000字扫盲shell基础知识(新手必备)
目录shell基础语法之变量shell 变量命名shell 变量调用shell 变量分类shell 运算符运算符种类关系运算符布尔运算符字符串运算符逻辑运算符文件测试运算符shell条件判断&流程控制单分支if双分支if多分支if语句不论前端还是后端,再学会Linux的基础上,还应该学会写一些简单的Shell。不止是工作,日常中想做...
2024-01-10