Shell中的一些小技巧

Bash是当前比较流行一种linux下的shell,下面是在学习过程中记录下的一些零散东西。整理以备忘!

1.函数参数的传递

1)脚本中先于函数定义的变量在函数中可用

2)函数运行所需参数,可以$1、$2、$3……来传递

3)变量设置关键词应避开系统变量,以免发生错误

4)变量的键盘读取

read -p/-t variable

-p后面接提示

-t后面接等待的秒数

引用脚本(命令)参数

$0 脚本(命令)本身

$1 脚本(命令)的第一个对数

$2

$? 读取最后执行命令的退出码,0为成功其他为失败

2.bash数组

声明

declare _a array

(也可以不声明,按数组的方式直接赋值给变量)

赋值

1)array = (var1 var2 var3 ……)

2)array = ( [0]=var1 [2]=var2 ……)

3)array[0]=var1

引用数组

echo ${array[n]}

遍历数组

filename=(‘ls‘)

for var in ${filename[@]};do   #@/* ---扩展位置对数,从1开始

echo $var

done

3.shell中的各种符号

代码块

{}不能正常的开启一个新的shell

[]test,test的表达式将在[]中。[]是shell内建test命令的一部分,不是/usr/bin/test的一个连接,[后有空格,]前有空格

[]数组元素

[]字符范围

(())数据计算的扩展,(())中使用数字计算

“”强力引用(保留变量中的空白)

‘’弱引用

4.bash退出码的含义

1通用错误

2shell内建命令使用错误

126命令调用不能执行

127command not found

128 exit的参数错误

130用Ctr+C来结束脚本

255 超出范围的退出状态

PS:shell脚本是一个管理员完成服务器管理工作非常重要的内容,充分使用脚本可以让你变成一个比较懒的管理员,这也是走向成功之路。

时间: 2024-10-06 07:03:27

Shell中的一些小技巧的相关文章

javascrip中的confirm小技巧

jsp页面中的一个标签: <a href="javascript:void(0)" onclick="confirmDelete('<%=request.getContextPath() %>/master/sysUser_deleteUserById.action?sysUserId=${each.sysUserId }');">删除</a> javascript中的confirm函数: <script>   fun

Matlab中的一些小技巧

Matlab中的一些小技巧 1.. Ctrl+C 中断正在执行的操作 如果程序不小心进入死循环,或者计算时间太长,可以在命令窗口中使用Ctrl+c来中断.MATLAB这时可能正疲于应付,响应会有些滞后. 2. figure命令新建一个绘图窗口 figure 可以打开一个空的绘图窗口,接下的绘图命令可以将图画在它里面,而不会覆盖以前的绘图窗口.当有多个figure窗口时,在命令窗口中执行如Plot等命令将覆盖当前figure窗口中的对象.所谓的当前figure窗口,也就是最后一次查看的窗口(可以用

ssh框架中.xml文件小技巧分离xml

struts.xml文件 struts.xml文件里的action可以分离出来,如: <!-- 预警信息监测 --> <include file="config/struts/warningInformAtion-struts.xml"></include> 注: include是放在</struts>标签的前面 在src下面新建 package 名为:config.struts,再新建xml文件为warningInformAtion-s

request.getAttribute在 jsp:include 中的应用(小技巧)

在这样的一个场景中 a.jsp 中使用 jsp:include在多处引入了 b.jsp,但是在b.jsp中有一部分只需要执行一次(引入一次):那么这个时候就可以使用 request.setAttribute来完成 在a.jsp中有这样一段代码 <% System.out.println(request.getAttribute("TOP_AD_LOADED")); %> <jsp:include page="b.jsp"> <jsp:p

iOS开发中的那些小技巧

一,前言 看到这个图,你会想起谁?是不是想起了,曾经的用户名输入框,密码输入框... 那么,问题来了:作为iOS开发的你,这个输入框你是怎么实现的,成为关键. 二,方案 方案1:弄一个UIView,在这个视图上分别放三个控件:UIImageView,UILabel与UITextField.(这个方案很直接,如果你只是简单的直接将三个控件放到视图上,那么你的月薪暴露了,最多3K.如果你是对这个视图重写了,将那三个控件封装起来了,放在.h文件,那你的月薪应该是3.5K,如果是将那三个控件放到.m文件

运算符中的一些小技巧

- 记下一些关于运算符的小技巧或容易出错的地方 %运算符 取余运算符运算结果的正负号由第一个运算子的正负号决定,比如: 1 -1 % 2 // -1 2 1 % -2 // 1 所以有时候对负数取余会出现错误,使用绝对值函数可以避免错误: // 会出错 function isOdd(n) { return n % 2 === 1; } isOdd(-5) // false isOdd(-4) // false // 正确了 function isOdd(n) { return Math.abs(

RS开发中的一些小技巧[不定期更新]

从9月份一直忙到了现在,项目整体的改版工作也完成了十有八九了,有些事情只有你自己真正的做了,你才能明白:哦,原来还可以这个样子,这样做真的好了很多呢,接下来我就分享一些最近遇到的RS开发的一些小技巧,都是些基本的东西,已掌握的可以来温习一下,没掌握的希望可以帮到大家 一:UI设计 1.1:配色 可以利用字体颜色.背景颜色.图片等来补充RS常规报表以及单个数据项的单调感,例如下面通过图片以及字体颜色调整过的报表的效果 1.2:布局 布局大家都知道使用table了,提前像设计HTML的页面一样规划好

Python 中的一些小技巧

这里是本人收集的一些 Python 小技巧,目前主要是一些实用函数,适合有一定基础的童鞋观看(不会专门介绍使用到的标准库函数).. 一.函数式编程 函数式编程用来处理数据,感觉很方便.(要是再配上管道操作符 | 或者 Java 的那种链式调用,超级爽!可惜 Python 都没有..需要借助第三方库) 1. 分组/group 数据处理中一个常见的操作,是将列表中的元素,依次每 k 个分作一组. def group_each(a, size: int):     """     

原来word中还有这些小技巧

word是很常见的办公软件,很多人只是拿来编辑文档,但其中隐藏的一些小技巧,知道后能让我们的工作事半功倍! 分类工具 - SmartArt 当我们做项目分类时,分成一两类还好,当项目多且复杂时可以用到我们的SmartArt工具,打开[插入--SmartArt--层次结构],选择一个你喜欢的层次结构,以及颜色效果搭配. 来看一下做出来的效果吧! 翻译工具- ×××换器 工作时难免会遇到大批量的word文件需要翻译,×××化器不仅可以一键导入word文档,还可转化为多个国家的语言. 调整工具- 制符