xshell编程小结

zk-njupt zk-njupt     2022-11-30     254

关键词:

初步学完shell脚本编程,通过这篇博客对其小结一下

shell定义:shell其实是一个命令解释器,它的作用是解释用户输入的命令和程序

shell脚本:我们可以在文本中输入一系列的命令、控制语句和变量,这一切有机的结合起来就形成了功能强大的shell脚本。

一.基础语法

查看系统脚本解释器

技术图片

常用的是bash解释器

使用bash解释器执行脚本的三种方式:

bash xx.sh

sh xx.sh

./xx.sh(注意是否有权限,没有通过chmod 755 xx.sh 或chmod u+x xx.sh 添加权限)

shell中的变量

系统变量

$HOME 家目录

$PWD 当前目录 

$SGELL 解释器路径

$USER 用户

自定义变量

变量名=变量值  注意等号两边没有空格

撤销变量 unset 变量名

静态变量

readonly 变量名=变量值(declare -r 变量名=变量值) 

静态变量不能撤销,关机或运行完脚本自动失效

全局变量

变量名=变量值

export 变量名

特殊变量$

$n

n为数字,$0代表该脚本名称,$1-$9代表第一到第九个命令行参数,第十个及以后的参数需要用大括号包含,如$10

技术图片

$#

获取所有输入参数的个数

[email protected] 和$*

[email protected]和$*都表示命令行中所有的参数,一般看来没有区别,for循环打印时都是一个个打印,但当用双引号分别将他们括起来,"[email protected]"是分裂的,不是一个整体(for i in "[email protected]"),而“$*”是一个整体

$?

最后一次执行命令的返回状态,如果值为0,证明命令执行正确,非0命令执行不正确

注意:函数中,函数的返回值只能有$?获取,且返回值小于等于255。单独比较大小时,结果也是由$?获取

技术图片

运算符

乘除加减

第一种方式:$((运算式))和$[运算式],运算符之间有没有空格无所谓

第二种方式:`expr 变量1  +-*/% 变量2` 运算符之间有空格 ,要加反引号

技术图片

条件判断

[ condition ] 条件与两端括号之间有空格

大小判断

 -lt 小于

-le 小于等于

-ge 大于等于

-gt  大于

-eq  等于

-ne  不等于

 

网络编程-小结

1-----------------------------------------------------基本知识----------------------------------------------------------------网络编程的三要素      A:IP地址    &nbs 查看详情

接口式编程小结

 1、接口式编程   原生:      Dao    =======》  DaoImpl  mybatis:    Mapper =======》  xxMapper.xml2、Sq1Ses 查看详情

java编程入门小结

Java编程入门小结Java发展历史 1.oak:java的前身,1991年出现 2.基于C++开发的新语言,主要用于嵌入式开发 3.之后产生了HotJava浏览器Java的可移植性/跨平台性java源程序*.java由编译器编译生成*.class文件*.class文件可运行在... 查看详情

java编程入门小结

Java编程入门小结Java发展历史 1.oak:java的前身,1991年出现 2.基于C++开发的新语言,主要用于嵌入式开发 3.之后产生了HotJava浏览器Java的可移植性/跨平台性java源程序*.java由编译器编译生成*.class文件*.class文件可运行在... 查看详情

java并发编程小结

旭日Follow_24的CSDN博客,全文地址请点击:https://blog.csdn.net/xuri24/article/details/82078467线程简介:线程是操作系统调度的最先单元,进程:线程=1:N关系,也就是说一个进程可以创建多个线程,至少包含一个线程。多线程可以最大限... 查看详情

后端结对编程小结(6.6)

邹卫其、陈志锴任务进度报告:按照前一篇前端给出的数据库需求文档(link),用navicat新建了数据库表,如下图并且利用逆向工程generator,生成了数据库接口方法,实现了对两个数据表的插入。任务安排:继续跟踪前端数据库... 查看详情

并发编程学习小结

...需要,定制自己线程池的大小。虽然通过这个对并发编程已经有了一定的了解,但是个人认为自己目前对于java的并发编程只是局限于使用和浅层的了解阶段,在这里先对自己这段时间的学习做个总结。    首先࿰... 查看详情

并发编程学习小结

...需要,定制自己线程池的大小。虽然通过这个对并发编程已经有了一定的了解,但是个人认为自己目前对于java的并发编程只是局限于使用和浅层的了解阶段,在这里先对自己这段时间的学习做个总结。    首先࿰... 查看详情

结对编程小结与收获

1.初始设计: 在拿到项目需求之后,我和伙伴经过讨论最终决定做一个javaweb小项目来实现需求。登录注册部分,初始的账户沿用了个人项目的几个固定用户,注册部分注册成功后直接进入系统(注册不用存入数据库)选择试... 查看详情

面向对象基础知识点小结

一、编程范式:编程是程序员用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程。一个程序是程序员为了得到一个任务结果而编写的一组指令的集合,正所谓条条大路通罗马,实现一个任务的方式有很多... 查看详情

第二章小结

...据,如插入删除和顺序添加等不足之处:缺少实际操作,编程能力还是较差,对于书本上的知识停留在理论层面。下阶段目标:把这学期学的内容通过编程重新复习一遍,增强编程能力。 查看详情

计算机基础小结

目录计算机之编程什么是编程语言什么是编程为什么要编程计算机组成原理计算机五大组成CPU内存外存输入设备输出设备I/O设备32位和64位32位64位多核CPU硬盘工作原理机械硬盘工作原理固态硬盘工作原理计算机操作系统文件是什... 查看详情

jquery插件编写及链式编程模型小结

    JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效。大多数情况下,我们都是使用别人开发的JQuery插件,今天我们就来看看如何把我们常用的功能做出JQuery插件,然后像使用jQuer... 查看详情

go语言编程中字符串切割方法小结

1.funcFields(sstring)[]string,这个函数的作用是按照1:n个空格来分割字符串最后返回的是[]string的切片复制代码代码如下:import( "fmt" "strings") funcmain() fmt.Println(strings.Fields("hellowiduugolang"))//out [hellow 查看详情

《java并发编程的艺术》学习小结

java并发编程的艺术第一章并发编程的挑战上下文切换:cpu通过时间片让不同线程轮流运行,从线程状态保存到下一次线程运行这个过程就是一次上下文切换多线程并不一定比单线程快,因为多线程会有线程创建和上... 查看详情

《java并发编程的艺术》学习小结

java并发编程的艺术第一章并发编程的挑战上下文切换:cpu通过时间片让不同线程轮流运行,从线程状态保存到下一次线程运行这个过程就是一次上下文切换多线程并不一定比单线程快,因为多线程会有线程创建和上... 查看详情

2.7小结

  该选择编译型语言还是脚本编程语言,通常视应用程序的额需求而定。脚本编程语言多半用于比编译型语言高级的情况,当你对性能的要求不高,希望尽快开发出程序并以较高级的方式工作时,也就是使用脚本编程语言... 查看详情

林子雨sparkscala版编程小结(代码片段)

dataframe有first()返回第一行数据,使用head(n)返回前n行数据,也可以使用take(n)返回前n行记录在RDD的行动操作中,用take(n)返回前n个元素,用top(n)逆序返回前n个元素在dataframe中使用count()输出dataframe对象的行数。在data... 查看详情