首页 > 简单shell

简单shell

执行脚本结果重定向

sh hah.sh hello 1>>/home/qiso/job.log 2>&1

上面这句话的意思是

首先通过sh执行脚本hah.sh,其中执行这个脚本的时候,需要传入参数,参数是hello,

1表示的是标准输出,以上脚本执行完毕之后,首先执行2>10122>1这个意思是说将标准错误重定向到标准输出,0,1,2分别表示标准输入,标准输出和标准错误,进过执行2>1之后,此时标准错误输出的结果重定向到了标准输出中,然后执行1>>/home/qiso/job.lob,结果就是把标准输出里面的值,写入到了那个文件中去了,上面整体的思路就是,首先执行脚本,将执行脚本过程中和标准错误重定向到标准输出中,然后将标准输出中的结果写入到指定文件中去

上面理解不正确,上面的意思是,我们正常的是把标准输出的结果存在了文件中,如果有标准错误的话,也会把标准错误的结果先重定向到标准输入中,然后在写入到文件中

变量

定义变量

变量名=”变量值”

shell 文件包含

在使用c语言的时候,我们经常使用文件包含的形式,去调用其他文件的函数

在shell中,我们也可以包含其他的文件,这样子可以调用其他的函数

在shell中,使用的方式就是

. hah.sh

或者是

source hah.sh

shell函数

shell函数可以加上return进行返回,也可以不用加上return进行返回,这个时候就是以最后一个命令的运行结果作为返回值

函数内部变量

shell脚本中定义的变量都是全局的,有的时候我们只需要函数内部的一些变量

这个时候使用的就是local,可以使用local在函数内部定义一个局部变量

function hello() {local haha="hahahahahahha";
}

更多相关:

  • 全卷积网络(FCN) 1.全卷积神经网络介绍 FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semantic segmentation)问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类(全联接层+softmax输出)不同,FCN可以接受任意尺寸的输入图像,采用反卷积层对最后一个卷积层的fea...

  • printf()函数优点在于可以格式化输出 格式:   %['padding_character][-][width][.precision]type   所有的转换说明都是以%开始,如果想打印一个%符号,必须用%% ;   参数“'padding_character”是可选,它将被用来填充变量直至所指定的宽度,该参...

  • 给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按GPLTGPLT....这样的顺序输出,并忽略其它字符。当然,四种字符(不区分大小写)的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按GPLT的顺序打印,直到所有字符都被输出。 输入格式: 输入在一行中给出一个长度不超过10000的、仅...

  • 给定两个整数A和B,输出从A到B的所有整数以及这些数的和。 输入格式: 输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。 输出格式: 首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。 输入样例:...

  • python面试题目 原文地址:https://www.usblog.cc/blog/post/justzhl/b5cc9a05c7d2 问题一:以下的代码的输出将是什么? 说出你的答案并解释。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Parent(object):     x...

  • 在某些情况下(例如通过网络访问数据),常常不希望程序卡住而占用太多时间以至于造成界面假死。在这时、我们可以通过Thread、Thread + Invoke(UI)或者是 delegate.BeginInvoke 来避免界面假死,但是这样做时,某些代码或者是某个方法的执行超时的时间还是无法操控的。那么我们又是否有一种比较通用的方法、来设...

  • 传参 如果程序执行的时候需要加入参数,如 ./sample aa bb 使用 gdb 的时候可以使用如下方式 gdb --args ./sample aa bb 执行 启动 gdb 之后,直接使用 r,就是 run 的意思,或者可以使用 b 加一个断点进行调试。处理信号 如果在使用的时候,遇到类似下面的报错 Threa...

  • 进程的图文形象表示 阮一峰–进程与线程的一个简单解释 多进程实质 现在,多核CPU已经非常普及了,但是,即使过去的单核CPU,也可以执行多任务。由于CPU执行代码都是顺序执行的,那么,单核CPU是怎么执行多任务的呢? 答案就是操作系统轮流让各个任务交替执行,任务1执行0.01秒,切换到任务2,任务2执行0.01秒,再切换到任务...

  • redis 事物: Redis 事物的实现: 首先 wath监控键值 myKey开启批量执行 multi,执行命令入列,执行 exec 。如果监控的键值mykey 没有被修改过,则exec 中批量执行的命令成功,否则执行失败。无论执行成功与否,都会执行取消wath的执行  Redis multi 批量执行,是先把批量中的命令放入队列...

  • 一、准备工作: 1.登录服务器,切换到root用户(su - root,然后输入密码,按enter),进入根目录:cd / 2.进入要安装jdk的目录,自己可以创建一个java目录,执行命令如下: cd /usr/local/ mkdir java 二、下载安装包 1.打开官网下载界面:https://www.oracle.com/...