精华内容
下载资源
问答
  • 在sh后面加
    万次阅读
    2019-07-11 15:53:20

    在下载的安装包当中的install.sh直接运行无法运行,需要在shell当中使用管理员权限安装。

    sudo ./install.sh

    更多相关内容
  • sh代码-截取命令结果/后面字符
  • shell中可执行程序后面添加&作用

    千次阅读 2020-07-01 11:24:06
    如执行命令: ./testpro & 终端显示 [1]表示jobID是1,4097...可以看到进程号为4097,进程后台运行; 注: 当关闭输入./testpro & 所在的终端时,进程退出了,此时通过ps 命令查看没有对应的进程。 ...

    如执行命令:   ./testpro &

    终端显示

    [1]表示jobID是1,4097表示进程ID是4097 

    通过ps 命令查看进程

     可以看到进程号为4097,进程在后台运行;

    注:

    1)添加 &与不添加&的区别:

    •        添加&运行后,在当前终端可以继续执行其他的命令(如下图所示),也可以使用ctrl +c 命令,都不会对后台的testpro命令造成影响。

    • 未添加&运行时,在卡在当前的可执行程序位置,如果此时使用ctrl +c 会终止当前进程,当然也不能再执行其他命令了。

    2)即使添加了& ,当关闭当前终端后,进程也会退出运行,此时通过ps 命令查看没有对应的进程。 

    总结:在添加了&只是解放了当前终端,可以在当前终端执行其他命令;但是关闭了当前终端,进程仍会退出。

    但是,添加&是个好习惯。

    展开全文
  • test.sh 脚本内容 echo $0 echo $1 echo $2 echo $3 执行附带参数 $ sh test.sh aa bb cc dd // $0 脚本文件路径 test.sh // 脚本路径后第 1 个参数 aa // 脚本路径后第 2 个参数 bb // 脚本路径后第 3 个参数 cc
    • test.sh 脚本内容

      echo $0
      echo $1
      echo $2
      echo $3
      
    • 执行附带参数

      $ sh test.sh aa bb cc dd
      // $0 脚本文件路径
      test.sh
      // 脚本路径后第 1 个参数
      aa
      // 脚本路径后第 2 个参数
      bb
      // 脚本路径后第 3 个参数
      cc
      
    展开全文
  • .sh文件规则 .sh文件执行方法

    千次阅读 2019-10-30 11:09:32
    这个例子中我们使用/bin/sh来执行程序。 当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要使编写脚本可执行: 编译 chmod +x filename 这样才能用./filename 来运行 2 注释 进行shel...

    .sh文件执行方法

    第一种
    (需要文件具备可执行的权限,使文件具备执行方法:chmod u+x datelog.sh ,x为条件)
    1、在任何路径下,输入该文件的绝对路径,例如: /root/datelog.sh就可执行该文件
    2、cd到datelog.sh文件的目录下,例如:cd /root/进入目录 ,然后执行./datelog.sh

    第二种
    (不需要文件具备可执行的权限)
    1、在该文件路径下sh加上文件名字即可,例如:cd /root/进入目录 ,然后sh datelog.sh
    2、在任意路径下,sh 加上文件路径及文件名称,例如:sh /root/ datelog.sh

    .sh文件创建规则

    1 .sh文件开头
    程序必须以下面的行开始(必须方在文件的第一行):
    #!/bin/sh
    符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
    当编写脚本完成时,如果要执行该脚本,还必须使其可执行。
    要使编写脚本可执行:
    编译 chmod +x filename 这样才能用./filename 来运行

    2 注释
    在进行shell编程时, 以#开头的句子表示注释,直到这一行的结束 。

    3 变量
    在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:
    #!/bin/sh
    #对变量赋值:
    a=”hello world”
    #现在打印变量a的内容:
    echo “A is:”
    echo $a
    有时候变量名很容易与其他文字混淆,比如:
    num=2
    echo “this is the $numnd”
    这并不会打印出”this is the 2nd”,而仅仅打印”this is the “,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:
    num=2
    echo “this is the ${num}nd”
    这将打印: this is the 2nd

    4 环境变量
    由export关键字处理过的变量叫做环境变量。 我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。

    5 Shell命令和流程控制
    在shell脚本中可以使用三类命令:

    (1)Unix 命令:

    虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。
    常用命令语法及功能
    echo “some text”: 将文字内容打印在屏幕上
    ls: 文件列表
    wc –l filewc -w filewc -c file: 计算文件行数计算文件中的单词数计算文件中的字符数
    cp sourcefile destfile: 文件拷贝
    mv oldname newname : 重命名文件或移动文件
    rm file: 删除文件
    grep ‘pattern’ file: 在文件内搜索字符串比如:grep ’searchstring’ file.txt
    cut -b colnum file: 指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:输出每行第5个到第9个字符cut -b5-9 file.txt千万不要和cat命令混淆,
    这是两个完全不同的命令
    cat file.txt: 输出文件内容到标准输出设备(屏幕)上
    file somefile: 得到文件类型
    read var: 提示用户输入,并将输入赋值给变量
    sort file.txt: 对file.txt文件中的行进行排序
    uniq: 删除文本文件中出现的行列比如: sort file.txt | uniq
    expr: 进行数学运算Example: add 2 and 3expr 2 “+” 3
    find: 搜索文件比如:根据文件名搜索find . -name filename -print
    tee: 将数据输出到标准输出设备(屏幕) 和文件比如:somecommand | tee outfile
    basename file: 返回不包含路径的文件名比如: basename /bin/tux将返回 tux
    dirname file: 返回文件所在路径比如:dirname /bin/tux将返回 /bin
    head file: 打印文本文件开头几行
    tail file : 打印文本文件末尾几行
    sed: Sed是一个基本的查找替换程序。可以从标准输入(比如命令管道)读入文本,并将
    结果输出到标准输出(屏幕)。该命令采用正则表达式(见参考)进行搜索。不要和shell中的通配符相混淆。比如:将linuxfocus替换为 LinuxFocus :cat text.file | sed ’s/linuxfocus/LinuxFocus/’ >newtext.fileawk: awk 用来从文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。
    catfile.txt | awk -F, ‘{print $1 “,” $3}’这里我们使用,作为字段分割符,同时打印第一个和第三个字段。如果该文件内容如下: Adam Bor, 34, IndiaKerryMiller, 22, USA命令输出结果为:Adam Bor, IndiaKerry Miller, USA

    (2) 概念: 管道, 重定向和 backtick

    这些不是系统命令,但是他们真的很重要。
    管道 (|) 将一个命令的输出作为另外一个命令的输入。
    grep “hello” file.txt | wc -l
    在file.txt中搜索包含有”hello”的行并计算其行数。
    在这里grep命令的输出作为wc命令的输入。当然您可以使用多个命令。
    重定向:将命令的结果输出到文件,而不是标准输出(屏幕)。
    写入文件并覆盖旧文件
    加到文件的尾部,保留旧文件内容。
    反短斜线
    使用反短斜线可以将一个命令的输出作为另外一个命令的一个命令行参数。
    命令:
    find . -mtime -1 -type f -print
    用来查找过去24小时(-mtime –2则表示过去48小时)内修改过的文件。如果您想将所有查找到的文件打一个包,则可以使用以下linux 脚本:
    #!/bin/sh
    The ticks are backticks () not normal quotes (‘): tar -zcvf lastmod.tar.gzfind . -mtime -1 -type f -print`

    (3) 流程控制

    1.if
    “if” 表达式 如果条件为真则执行then后面的部分:
    if ….; then
    ….
    elif ….; then
    ….
    else
    ….
    fi
    大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等…
    通常用” [ ] “来表示条件测试。注意这里的空格很重要。要确保方括号的空格。
    [ -f “somefile” ] :判断是否是一个文件
    [ -x “/bin/ls” ] :判断/bin/ls是否存在并有可执行权限
    [ -n " v a r " ] : 判 断 var" ] :判断 var"]var变量是否有值
    [ “ a " = " a" = " a"="b” ] :判断 a 和 a和 ab是否相等
    执行man test可以查看所有测试表达式可以比较和判断的类型。
    直接执行以下脚本:
    #!/bin/sh
    if [ “$SHELL” = “/bin/bash” ]; then
    echo “your login shell is the bash (bourne again shell)”
    else
    echo “your login shell is not bash but S H E L L ” f i 变 量 SHELL” fi 变量 SHELLfiSHELL包含了登录shell的名称,我们和/bin/bash进行了比较。
    快捷操作符
    熟悉C语言的朋友可能会很喜欢下面的表达式:
    [ -f “/etc/shadow” ] && echo “This computer uses shadow passwors”
    这里 && 就是一个快捷操作符,如果左边的表达式为真则执行右边的语句。
    您也可以认为是逻辑运算中的与操作。上例中表示如果/etc/shadow文件存在则打印” This computer uses shadow passwors”。同样或操作(||)在shell编程中也是可用的。这里有个例子:
    #!/bin/sh
    mailfolder=/var/spool/mail/james
    [ -r “$mailfolder” ]‘ ‘{ echo “Can not read KaTeX parse error: Expected 'EOF', got '}' at position 23: …der” ; exit 1; }̲ echo “mailfolder has mail from:”
    grep “^From ” $mailfolder
    该脚本首先判断mailfolder是否可读。如果可读则打印该文件中的”From” 一行。如果不可读则或操作生效,打印错误信息后脚本退出。这里有个问题,那就是我们必须有两个命令:
    ◆打印错误信息
    ◆退出程序
    我们使用花括号以匿名函数的形式将两个命令放到一起作为一个命令使用。一般函数将在下文提及。
    不用与和或操作符,我们也可以用if表达式作任何事情,但是使用与或操作符会更便利很多。

    展开全文
  • Linux nohup运行.sh脚本文件

    千次阅读 2021-12-08 11:00:20
    记录一下,Linux 终端运行.sh文件,以前只终端nohup过.py文件。 nohup python -u Job.py >/dev/null 2>error.log 2>&1 & 这次后台启动带参数的脚本文件,正常启动: 该脚本文件是多进程 bash ...
  • build.sh脚本

    万次阅读 2017-11-01 18:13:25
    这个例子中我们使用/bin/sh来执行程序。 当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要使编写脚本可执行: 编译chmod +x filename这样才能用./filename来运行 2注释 进行shell编程时,以#开头的...
  • 客户端=>控制器 项目中我们引用了system.web.routing, 如果第一个匹配成功了,那么后面的都不会再匹配. 1. routing的作用: 确定colltroller,确定ac ... 解决git pull时出现的几个问题 第1个问题: 解决GIT代码仓库...
  • linux中的sh脚本语法

    千次阅读 2022-02-05 19:32:45
    linux中的sh脚本语法 玩linux都知道sh脚本的方便,但如何编写sh脚本却是像我这样的新手和菜鸟的难题。...这个例子中我们使用/bin/sh来执行程序。 当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要
  • 2.-x 是调试用的,了这个,就会把脚本中的每条命令的执行情况打印出来 以下部分为转载: 我们前面介绍的调试手段是通过修改shell脚本的源代码,从其输出相关的调试信息来定位错误的,那有没有不修改源代码来...
  • docker出现问题:dockerfile启动不起来(启动命令后面加了/bin/bash 导致启动不起来)解决方案
  • android开发笔记之sh脚本

    万次阅读 2016-05-15 11:02:44
    这个例子中我们使用/bin/sh来执行程序。执行sh脚本当编辑好脚本时,如果要执行该脚本,还必须使其可执行。 要使脚本可执行: Sh代码chmod +x filename或者sudo chmod 777 filename然后,您可以通过输入下面二个...
  • sh -s 用法

    千次阅读 2018-03-06 11:01:40
    1.基础用法 sh -s 用于从标准输入中读取命令,命令子shell中执行 当sh -s 后面跟的参数,从第一个非 - 开头的参数,就被赋值为子shell的$1,$2,$3....2.示例(1)jiajia@jiajia-pc:~/ruby$ echo 'ls $2' | sh -s '' '...
  • Linux下如何写 .sh 脚本启动 项目

    千次阅读 2021-05-08 23:27:03
    Linux下如何写 .sh 脚本启动 项目创建文件mealcoupon.sh内容如下:#!/bin/bash#这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=xhqy_yzf-1.0.0.war#项目的路径(替换成你项目的路径)PROJECT_LOCATION=/home...
  • linux sh命令简述

    万次阅读 多人点赞 2020-07-03 18:00:52
    linux sh命令简述1. 可能需要的执行方式linux下执行.sh文件的方法2. 开头:#!/bin/sh3. 变量4. Shell命令和流程控制Unix命令概念:管道,重定向和backtick(反斜线)流程控制 1. 可能需要的执行方式 linux下执行.sh...
  • 执行脚本文件之.sh和./的区别

    千次阅读 2020-09-01 17:12:18
    sh表示脚本默认使用sh脚本解释器。 未指定脚本解释器默认为 ./。 具体解释: 使用“./”执行脚本,对应的xxx.sh脚本必须要有执行权限。 使用“sh” 执行脚本,对应的xxx.sh没有执行权限,亦可执行。 当脚本开头使用#...
  • Linux shell 获取脚本文件后面的参数的方法
  • IIC超详解&SH367309实例IIC协议应用

    千次阅读 2020-04-02 21:41:01
    目录 什么是IIC? IIC的特性 物理(电气)特性 IIC总线通信协议 开始和结束条件 一位信号数据传递模式 IIC数据含义解析 Write(写)操作(8位数据+1位ACK...协议实例:SH367309 ... SH367309电器特性 ... SH3673...
  • linux双击执行sh脚本

    千次阅读 2021-03-31 19:07:07
    文章目录linux双击执行sh脚本1、桌面上新建一个Auto.sh脚本文件2、打开终端桌面目录下执行以下命令进行权限设置:3、设置Terminal启动命令4、双击启动程序开机自启程序1、home搜索:start,如下图所示:2、...
  • linux 下sh脚本中有\r解决

    千次阅读 2020-06-17 16:22:59
    现象: 解决: sed -i 's/\r//' log.sh && bash log.sh
  • 最近工作中遇到一个问题,想某个文件的指定位置后面添加一个标志位,要求shell脚本里实现。问题说明:想sys_config.fex文本的某个字符串后面添加一个flag例如:sys_config.fex里有这么一段[nand_para]nand_use...
  • Linux命令输入./ test.sh时(需要可执行权限)时,我们这个文本文件开头指定了bash为默认的解释器,因此当前的交互式Shell会fork一个子进程,用bash解释器的代码去替换(也就是exec),而这个文本文件被当作...
  • 原文链接:http://blog.csdn.net/xyang81/article/details/53053642学习zookeeper(下面简称zk)客户端之前,有必要先了解一下zk的数据模型。zk维护着一个逻辑上的树形层次结构,树中的节点称为znode,和Linux系统...
  • build.sh脚本文件 #!/bin/bash # 1.该行是如果出现错误,就退出脚本执行 set -e # ---设置基本环境变量start--------------------- export LC_ALL=en_US.UTF-8 # 1. BASH_SOURCE[0]等价于BASH_SOURCE,取得当前...
  • linux中sh脚本的写法

    万次阅读 2018-10-24 15:47:45
    这个例子中我们使用/bin/sh来执行程序。 当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要使编写脚本可执行: 编译 chmod+x filename 这样才能用./filename 来运行 2 注释 进行shell编程时,以#...
  • 需要说明,rc.local是一个配置文件,开机启动时,会加载这个配置文件,于是我们写里面的内容会被当做命令逐一执行。这个方法显然比自己定义一个服务要简单快捷,可以用于实现一些简单服务自启动。 二、linux...
  • IIC详解以及SH367309-TWI示例应用

    千次阅读 2019-09-04 14:09:25
    什么是IIC? IIC (Inter-Integrated Circuit), ...这个通信协议是由(NXP半导体的前生)飞利浦公司发明,并2006年开始,I2C协议的实施不要许可费,但仍要收取I2C从机分配地址的费用 IIC的特性 仅用两线连接;...
  • nohup sh xxx.sh &>/dev/null &

    千次阅读 多人点赞 2019-08-17 17:44:47
    nohup sh xxx.sh &>/dev/null & 或者其它类似写法 nohup ./xxx [args] &>/dev/null & 这个命令的作用是:后台运行进程xxx并将标准输出和标准错误流重定向到linux的空设备 下面对于命令中的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 243,961
精华内容 97,584
关键字:

在sh后面加