精华内容
参与话题
问答
  • Shell定时重启程序

    2019-04-29 12:59:00
    为什么80%的码农都做不了架构师?>>> ...
    # 第一步:新建文件restartofbiz.sh
    
    #!/bin/bash
    
    ps -ef | grep ofbiz | grep -v grep
    if [ $? -ne 0 ]
    then
        echo "start new......"
        sh startofbiz.sh
    else
        echo "restart......"
    	ps -ef |grep ofbiz |awk '{print $2}'|xargs kill -9
        sh startofbiz.sh
    fi
    
    
    # 第二步:Linux新建定时器(每天两点定时执行)
    crontab -e
    * 2 * * * /data/fy_vip/restartofbiz.sh
    
    

     

    转载于:https://my.oschina.net/moks/blog/3043848

    展开全文
  • shell脚本基本命令

    千次阅读 2018-02-11 16:07:08
    # 输入内容的命令 echo "hello word" ##定义变量 注意在定义变量的时候,变量与等号之间不能有空格 name="张三" # 输出 在输出变量的时候,我们需要在变量前面加上$(美元符) echo $name # 修改...
    #!/bin/sh
    # 输入内容的命令
    echo "hello word"
    ##定义变量 注意在定义变量的时候,变量与等号之间不能有空格
    name="张三"
    # 输出 在输出变量的时候,我们需要在变量前面加上$(美元符)
    echo $name
    # 修改name的值为 李四
    name="李四"
    #输出修改的值
    echo $name
    #定义只读的变量,不可以修改的变量,使用的关节字 readonly 变量名字,和java里面的final 一样
    readonly address="中国北京首都"
    #输出内容
    echo $address
    # 删除变量 使用 unset 命令可以删除变量
    unset name
    # 变量被删除后不能再次使用。unset 命令不能删除只读变量。
    # shell 语言中单引号 与 双引号的区别
    # 单引号里面的变量是无效的,双引号里面有变量
    #定义一个变量
    sex='男'
    #定义一个变量里面可以包含 sex
    sexs="this is "$sex" "
    #打印 sexs
    echo $sexs
    #拼接字符串
    # 首先定义一个字符串
    class='1509F'
    #拼接字符串
    classes="this is a test project manager ${class}"
    #输出内容
    echo $classes
    #获取字符串的长度
    echo ${#classes}
    #截取字符串
    echo ${classes:1:5}
    ##查找字符串 使用 expr index
    #echo `expr index "$classes" test`
    #顶一个 数组与Python中的元祖一样使用()
    names=('张三','李四','王五','赵六')
    
    欢迎大家收看哦!!!!

    展开全文
  • Shell脚本基本命令

    千次阅读 2015-06-01 18:49:11
    shell脚本运行方式 $sh script.sh $sh /home/path/script.sh $chmod a+x script.sh ; $./script.sh echo的三种使用方式 echo hello world 不能包含一些特殊关键字,如分号; echo "hello word" 不能包含一些特殊...
    
    

    shell脚本运行方式

    $sh script.sh
    $sh /home/path/script.sh
    $chmod a+x script.sh ; $./script.sh

    脚本调试方法


    shell脚本的三种调试方法:
    -n   读一遍脚本中的命令但不执行,用来检查脚本中的语法错误
    -v   一边执行脚本,一边将执行过的脚本命令打印到标准输出端
    -x   提供跟踪执行信息,将执行的每一条命令和结果一次打印出来
    这应该就像C语言的gdb一样有用吧,有助于检查错误
    使用这些选项有三种方法
    1.在命令行提供参数:$sh -x script.sh
    2.脚本开头提供参数:#!/bin/sh -x
    3.在脚本中用set命令启用or禁用参数:其中set -x表启用,set +x表禁用

    另:在写脚本的时候,需特别注意添加空格或换行或分号
    eg   text命令:  $[ 5 -lt 10 ]左方括号后须有空格,右方括号前也须有空格
            shell脚本中函数定义: foo() {后须有空格或换行
            shell脚本中,若同一行内写有两条命令须加分号
    与C语言不同的是,shell脚本中,返回值0表真,1表假。

    echo的三种使用方式

    echo hello world 不能包含一些特殊关键字,如分号;
    echo "hello word" 不能包含一些特殊字符,比如!
    echo 'hello word" 包含'$var'变量不能被求值


    echo默认会将一个换行符追加到输出后,如果想禁止,可以使用-n这个选项
    如果想要使某些转义字符生效,则可以使用-e这个选项,如 
    echo "\ta\tb" 会输出 \ta\tb
    echo -e "\ta\tb" 则会输出 a b


    显示某些进程的环境变量

    [hadoop@Hadoop ~]$ pgrep bash
    3182
    [hadoop@Hadoop ~]$ cat /proc/3182/environ 
    USER=hadoopLOGNAME=hadoopHOME=/home/hadoopPATH=/usr/local/bin:/bin:/usr/binMAIL=/var/mail/hadoopSHELL=/bin/bashSSH_CLIENT=192.168.1.1 5649 22SSH_CONNECTION=192.168.1.1 5649 192.168.1.10 22SSH_TTY=/dev/pts/0TERM=vt100SELINUX_ROLE_REQUESTED=SELINUX_LEVEL_REQUESTED=SELINUX_USE_CURRENT_RANGE=



    算术运算

    使用 let、(())、[]执行基本的算术运算。

    如let a = b+c; let a++;let a--;
    也可以使用[], a=$[b+c];  a=$[$b+5]
    也可以使用(()),不过都需要在变量前加上$
    删除变量:unset


    tee

    tee命令:以stdin作为输入,将其输入到某个文件中,并原样输出



    显示变量

    set 显示当前shell的变量,包括当前用户环境变量和自己定义的变量

    env 显示当前用户环境变量
    export 显示当前导出成用户变量的shell变量


    关联数组即 Map

    [hadoop@Hadoop ~]$ declare -A map_array
    [hadoop@Hadoop ~]$ map_array[index1]=val1
    [hadoop@Hadoop ~]$ map_array[index2]=val2
    [hadoop@Hadoop ~]$ echo ${map_array[*]}
    val1 val2
    [hadoop@Hadoop ~]$ echo ${!map_array[*]}
    index1 index2

    cat

    作用:读取、显示、拼接文件内容。
    将AB两个文件内容一块输出 [hadoop@Hadoop ~]$ cat A B
    将输入文本与A一块显示 [hadoop@Hadoop ~]$ echo "Hello" | cat - A
    压缩空白行 cat -s  A
    将制表符显示为^|  cat -T A
    显示文本行号 cat -n A


    find

    作用:查找路径及子路径下所有的文件和文件夹
    查找script目录下所有的文件
    [hadoop@Hadoop ~]$ find script/
    script/
    script/timing.log
    script/output.session


    根据文件名或正则表达式匹配搜索
    [hadoop@Hadoop ~]$ find script/ -name "t*" #必须用引号括起来
    [hadoop@Hadoop ~]$ find script/ -iname "t*" #忽略文件名的大小写


    可以用OR连接多个条件
    [hadoop@Hadoop ~]$ find script/ \( -name "t*" -o -name "out*" \)#注意空格
    script/timing.log
    script/output.session


    可以使用参数指定查找深度
     -maxdepth 1 #指定查找的最大深度

     -mindepth 1 #指定查找的最小深度,即只列出1层以上的文件列表


     根据文件类型搜索

     -type d #只列出文件夹  -type f #只列出普通文件


     此外还可以根据时间和文件大小,还可以使用-delete删除找到的文件。
     -exec 可以对查出的每一个文件分别进行处理,如将文件所有者root改为hadoop:
     [hadoop@Hadoop temp]$ sudo find . -type f -user root -exec chown hadoop {} \;

    xargs

    作用:将标准输入转换成命令行参数或者将单行或多行文本转换成命令行参数
    [hadoop@Hadoop ~]$ cat A | xargs #将A文件多行数据转换成单行输入,即将换行符替换为空格
    [hadoop@Hadoop ~]$ cat A | xargs -n 3#将A文件多行数据重新分割并按3个进行分组
    [hadoop@Hadoop ~]$ cat A | xargs -d i #指定分隔符为 i

     小提示:xargs 默认是以空白字符 (空格, TAB, 换行符) 来分割记录的, 因此文件名 file 1.log 被解释成了两个记录 file 和 1.log, 不幸的是 rm 找不到这两个文件.为了解决此类问题, 让 find命令在打印出一个文件名之后接着输出一个 NULL 字符 ('') 而不是换行符, 然后再告诉 xargs 也用 NULL 字符来作为记录的分隔符. 这就是 find 的 -print0 和 xargs 的 -0 的来历吧.


    sort和uniq

    [hadoop@Hadoop ~]$sort A #对A文件进行升序排序
    [hadoop@Hadoop ~]$sort -r A #对A文件进行逆序排序
    [hadoop@Hadoop ~]$sort -n A #对A文件按数字进行排序
    [hadoop@Hadoop ~]$sort -k 2 A #根据第二列进行排序


    uniq总是和sort一起使用,可以消除重复的行


    脚本文件参数

    $0 这个程式的执行名字
    $n 这个程式的第n个参数值,n=1..9
    $* 这个程式的所有参数,此选项参数可超过9个。
    $# 这个程式的参数个数
    $$ 这个程式的PID(脚本运行的当前进程ID号)
    $! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)
    $? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)
    $- 显示shell使用的当前选项,与set命令功能相同
    $@ 跟$*类似,但是可以当作数组用
    展开全文
  • Shell脚本基础及基本常用命令

    万次阅读 2018-06-16 11:10:07
    一、shell基本信息 1.概述 脚本语言(shell、python):解释性语言,用解释器解释 运行效率低 | c、java:描述性语言,运行效率高 #!/bin/bash 幻数 ,在脚本运行的时候先进行该程序 以.sh结尾会有高亮显示 ...

    一、shell基本信息

    1.概述
    脚本语言(shell、python):解释性语言,用解释器解释 运行效率低 | c、java:描述性语言,运行效率高
    #!/bin/bash 幻数 ,在脚本运行的时候先进行该程序
    以.sh结尾会有高亮显示
    执行: sh hello.sh 或者 chmod +x hello.sh 再以绝对路径调用 /mnt/hello.sh
    2.shell脚本

    • 脚本是一种解释型语言
    • 用 shell 脚本保存执行动作
    • 用脚本判定命令的执行条件
    • 用脚本来实现动作的批量执行

    二、新建脚本自动添加注释信息

    [root@localhost mnt]# vim  /etc/vimrc 
    map <F4> ms:call MESS()<cr>'s
    func MESS()
            call append(0,"#################################")
            call append(1,"#Author:         gao".(" #"))
            call append(2,"#Version:                ".("    #"))
            call append(3,"#Mail:   gw@163.com".("          #"))
            call append(4,"#Date:           ".strftime("%Y-%m-%d").("       #"))
            call append(5,"#Description:    ".("            #"))
            call append(6,"# ".("                           #"))
            call append(7,"#################################")
            call append(8," ")
            call append(9,"#!/bin/bash")
    endfunc
    [root@localhost mnt]# vim  file.sh   ##新建一个脚本会自动添加注释信息

    配置文件所加内容(在建立一个脚本的情况下按F4会添加信息)
    这里写图片描述
    脚本的信息
    这里写图片描述
    注释掉按F4添加信息,改为自动给新建的脚本添加注释
    这里写图片描述

    三、编写脚本,执行该脚本显示ip

    [root@localhost mnt]# vim  ip_show.sh
    ifconfig eth1 |awk -F " " '/inet\>/{print $2}'
    [root@localhost mnt]# chmod  +x  ip_show.sh ##给一个可执行权限
    [root@localhost mnt]# /mnt/ip_show.sh   ##用绝对路径的方式调用
    [root@localhost mnt]# sh ip_show.sh    ##直接调用脚本

    内容如下:
    这里写图片描述
    执行该脚本的情况
    这里写图片描述

    四、常用的shell命令

    1.diff命令
    diff 命令是用来比较两个文件或目录的不同
    c –change d –delete a –add

    <表示第一个文件中的内容
    —-分割线
    >表示第二个文件中的内容
    [root@localhost mnt]# vim  westos
    [root@localhost mnt]# vim westos1
    [root@localhost mnt]# cat  westos
    hello   123
    linux
    [root@localhost mnt]# cat  westos1
    hello   123
    [root@localhost mnt]# diff westos  westos1    ##第一个和第二个进行比较以第二个文件为准则
    2d1                                           ##删除第一个文件的第二行才能和第二个文件的第一行匹配 
    < linux
    

    对文件进行补丁

    [root@localhost mnt]# diff  -u  westos westos1  ##生成补丁 
    --- westos  2018-06-09 22:44:21.237865024 -0400
    +++ westos1 2018-06-09 22:45:25.921865024 -0400
    @@ -1,2 +1 @@
     hello 123
    -linux
    [root@localhost mnt]# diff -u  westos westos1 > westos.path  
    f -u  westos westos1 > westos.path
    [root@localhost mnt]# yum  install patch -y  ##下载补丁工具
    [root@localhost mnt]# patch westos westos.path 
    patching file westos
    [root@localhost mnt]# cat westos
    hello 123

    这里写图片描述
    补丁的同时进行备份

    [root@localhost mnt]# patch -b  westos westos.path ##进行备份生成.orig文件,-b保留原文件,并进行补丁
    patching file westos
    [root@localhost mnt]# ls
    westos  westos1  westos.orig  westos.path
    [root@localhost mnt]# cat westos.orig ##补丁之前的源文件
    hello 123
    linux

    对目录的比较:

    [root@localhost mnt]# mkdir linux
    [root@localhost mnt]# mkdir unix
    [root@localhost mnt]# ls
    linux  unix  westos  westos1  westos.orig  westos.path
    [root@localhost mnt]# touch linux/hello
    [root@localhost mnt]# diff -r linux/ unix/
    Only in linux/: hello
    

    2.cut命令
    cut 命令多用与字符截取

    • cut -d 指定分隔符
    • cut -f 1,7|1-7 指定截取的列 1,7(1和7) 1-7(1到7)
    • cut -c 1,4|1-4 指定截取的字符位置
    [root@localhost mnt]# cp  /etc/passwd  .
    [root@localhost mnt]# ls
    ip_show.sh  passwd  westos  westos1
    [root@localhost mnt]# vim  passwd 删除一部分便于实验
    [root@localhost mnt]# cut  -d  :  -f  1-2 passwd  ##以:为分隔符截取第一列和第二列

    这里写图片描述

    [root@localhost mnt]# cut  -d  :  -f  1,7 passwd ##以:为分隔符截取第1列和第7列
    

    这里写图片描述

    [root@localhost mnt]# cut -c  1-4 passwd    ##截取第一到第四个字符

    这里写图片描述
    3.sort命令

    多用于字符排序
    sort -n 纯数字排序
    sort -r 倒序
    sort -u 去掉重复数字
    sort -o 输出到指定文件中
    sort -t 指定分隔符
    sort -k 指定要排序的列

    [root@localhost mnt]# vim hello  ##编辑一个由数字组成的文件
    [root@localhost mnt]# cat hello 
    3
    4
    5
    2
    1
    6
    8
    4
    45
    55
    33
    2
    [root@localhost mnt]# sort  -n hello  ##正序排序
    1
    2
    2
    3
    4
    4
    5
    6
    8
    33
    45
    55
    [root@localhost mnt]# sort -r  hello ##倒序排序,默认只排第一位的数字
    8
    6
    55
    5
    45
    4
    4
    33
    3
    2
    2
    1
    [root@localhost mnt]# sort -nr  hello ##倒叙排序
    55
    45
    33
    8
    6
    5
    4
    4
    3
    2
    2
    1
    [root@localhost mnt]# sort -nr -u  hello  ##倒叙排序,删除重复的项
    55
    45
    33
    8
    6
    5
    4
    3
    2
    1
    [root@localhost mnt]# sort -nr  hello   -o  file  ##倒序排序输出到file文件
    [root@localhost mnt]# cat file  ##查看文件
    55
    45
    33
    8
    6
    5
    4
    4
    3
    2
    2
    1
    
    [root@localhost mnt]# vim hello 
    [root@localhost mnt]# cat hello 
    [root@localhost mnt]# sort  -t  :  -k  2 -n hello 

    这里写图片描述
    4.uniq命令
    对重复字符做相应的处理

    • uniq -u 显示唯一的行
    • uniq -d 显示重复的行
    • uniq -c 每行显示一次并统计重复次数
    [root@localhost mnt]# vim hello 
    [root@localhost mnt]# cat hello 
    

    这里写图片描述

    [root@localhost mnt]# sort -n  hello |uniq  -c
    

    这里写图片描述

    [root@localhost mnt]# sort -n  hello |uniq  -d  ##将文件正序排列,显示重复的数字
    [root@localhost mnt]# sort -n  hello |uniq  -u  ##将文件正序排列,显示不重复的数字
    

    这里写图片描述
    5.&&和||运算符
    && 用来执行条件成立后执行的命令,|| 用来执行条件不成立后执行的命令

    [root@localhost mnt]# ping -c1 -w1  172.25.254.62  &> /dev/null && echo this is up|| echo  this  is  down
    this is up
    ## -c代表次数   -w代表等待时间

    编写脚本判断ip是否存在

    [root@localhost mnt]# vim   ip_check.sh
    #!/bin/bash
    [ -z "$1" ] &&{
            echo please give me a ipaddress!!
            exit 1
    }
    ping -c1 -w1 $1 &>  /dev/null  &&{
            echo "$1 is up"
    }||{
            echo "$1 is down"
    }   

    这里写图片描述
    执行脚本:

    [root@localhost mnt]# sh  ip_check.sh 
    please give me a ipaddress!!
    [root@localhost mnt]# sh  ip_check.sh 172.25.254.62
    172.25.254.62 is up
    [root@localhost mnt]# sh  ip_check.sh 172.25.254.5
    172.25.254.5 is down
    

    6.test命令
    test 命令和[ ]等同
    test “A==B” 等同 [ “A==B” ]
    [ “A=B” ]等于
    [ “A!=B” ]不等于
    [ “AeqB” ] 等于
    [ “AneB” ] 不等于
    [ “AleB” ] 小于等于
    [ “AltB” ] 小于
    [ “AgeB” ] 大于等于
    [ “AgtB” ] 大于
    [ “AneB” -a “AgtB” ] ne表示不等于,a表示and都满足
    [ “AneB” -o “AgtB” ] o表示or至少满足一个
    [ -z “A][nA” ] 表示值不为空
    [ “file1” -ef “file2” ] ef 表示节点是否相同
    [ “file1” -nt “file2” ] 表示new,file1是否比file2文件新
    [ “file1” -ot “file2” ] 表示old,file1是否比file2文件老
    [-e “file”] 文件是否存在
    [-f “file”] 文件是否为普通文件
    [-L “file”] 文件是否为符号链接
    [-S “file”] 文件是否为套接字
    [-b “file”] 文件是否为块设备
    [-d “file”] 文件是否为目录
    [-c “file”] 文件是否为特殊文件

    判断两个数字是否相等

    [root@localhost mnt]# a=1
    [root@localhost mnt]# b=2
    [root@localhost mnt]# [ "$a" == "$b" ] && echo yes || echo no
    no
    [root@localhost mnt]# test "$a" == "$b" && echo yes ||echo no
    no
    

    判断节点数是否相等

    [root@localhost mnt]# touch file
    [root@localhost mnt]# ln file  file1
    [root@localhost mnt]# ls -li *
    8842676 -rw-r--r-- 2 root root   0 Jun 15 22:04 file
    8842676 -rw-r--r-- 2 root root   0 Jun 15 22:04 file1
    [root@localhost mnt]# [ "file" -ef "file1" ] && echo yes  || echo no
    yes
    

    这里写图片描述
    判断文件的新旧

    [root@localhost mnt]# rm -rf file1
    [root@localhost mnt]# touch file1
    [root@localhost mnt]# [ "file"  -ot "file1" ] && echo yes || echo no
    yes
    [root@localhost mnt]# [ "file"  -nt "file1" ] && echo yes || echo no
    no
    

    编写脚本,输入一个数字判断是否在10以内

    [root@localhost mnt]# vim  num_check.sh
    #!/bin/bash
    [ -z "$1" ]&&{   ##$1表示输入的数字
            echo please input a number after scripts!!
            exit 1
    }
    [ "$1" -gt "0"  -a "$1" -lt  "10" ]&& { ##表示$1大于等于0并且小于等于10
            echo  "$1" is between 1~10
    }||{
            echo "$1" is not between 1~10
    }
    ~     

    这里写图片描述
    调用脚本:

    [root@localhost mnt]# sh num_check.sh 
    please input a number after scripts!!
    [root@localhost mnt]# sh num_check.sh 33
    33 is not between 1~10
    [root@localhost mnt]# sh num_check.sh 5
    5 is between 1~10
    

    编写脚本,判断文件是否存在,如果存在判断其类型

    [root@localhost mnt]# vim file_check.sh
    #!/bin/bash
    [ -z "$1" ]&& {
            echo "please input a filename after scripts!!"
            exit 1
    }
    [ -e "$1" ]||{
            echo "$1 is not exist!!"
            exit 0
    }
    [ -L "$1" ]&&{
            echo "$1 is a link"
            exit 0
    }
    [ -f "$1" ]&&{
            echo "$1 is a common file"
            exit 0
    }
    [ -b "$1" ]&&{
            echo "$1 is a block file"
    }
    

    这里写图片描述
    调用脚本:

    [root@localhost mnt]# sh file_check.sh 
    please input a filename after scripts!!
    [root@localhost mnt]# sh file_check.sh file
    file is a common file
    

    7.tr命令
    tr命令用于 大小写转换
    编写脚本,判断输入的内容和hello是否相等

    [root@localhost mnt]# vim  test.sh
    #!/bin/bash
    [ "$1" = "hello" ]&& {
            echo yes
    }||{
            echo no
    }

    脚本调用:

    [root@localhost mnt]# sh test.sh hello
    yes
    [root@localhost mnt]# sh test.sh HELLO  ##对于大写的hello不能识别
    no
    

    解决方案:

    [root@localhost mnt]# vim  test.sh
    #!/bin/bash
    WORD=$(echo $1 |tr 'A-Z' 'a-z')  ##利用变量WORD,将输入的字符从大写转换为小写
    [ "$WORD" = "hello" ]&& {
            echo yes
    }||{
            echo no
    }
    

    这里写图片描述
    脚本调用:

    [root@localhost mnt]# sh test.sh hello
    yes
    [root@localhost mnt]# sh test.sh HELLO
    yes
    

    五、用脚本建立用户

    基本思路:

    1、查看脚本后所跟字符是不是两串
    2、检测第一串字符是不是用户
    3、建立不存在的用户并设定密码
    [root@localhost mnt]# vim  user_create.sh
    #!/bin/bash
    [ "$#" -eq "2" ]||{
            echo "please input a username and password after script!!"
            exit 1
    }
    Check_User=`getent passwd $1`
    [ -n  "$Check_User" ] &&{
            echo $1 is exist!!
            exit 1
    }
    useradd $1
    echo $2 |passwd --stdin $1
    ~         

    这里写图片描述
    脚本调用:

    [root@localhost mnt]# sh user_create.sh  
    please input a username and password after script!!
    [root@localhost mnt]# sh user_create.sh  student 123
    student is exist!!
    [root@localhost mnt]# sh user_create.sh  linux 123
    Changing password for user linux.
    passwd: all authentication tokens updated successfully.
    [root@localhost mnt]# su - linux
    [linux@localhost ~]$ 
    
    展开全文
  • Shell 脚本常用命令

    千次阅读 2019-07-31 19:32:50
    Shell脚本是Linux开发工作中常用的工具,但是我一直没有找到一个适合自己的简明扼要的HandBook。在工作过程中整理了一下,贴在这里已备查看。 1 Shell中的特殊符号 1.1 $ 美元符号。用来表示变量的值。如变量...
  • shell脚本常用命令

    2017-09-18 17:05:43
    basename 1. basename 是去除目录...shell> temp=/home/temp/1.test shell> base=`basename $temp` shell> echo $base 结果为:1.test 2. dirname 是取目录 example: shell> temp=/home/temp/1.test shell
  • shell脚本命令

    2018-10-11 16:27:07
    输出的结果到文件中 ./脚本.sh |tee 文件名.txt chmod +x 文件名 修改权限 有时候编译不通过,记得编码改成UNIX的,空格换行符和window的不同 awk 用来从文本文件中提取字段 cat 文件名 | awk -F+分隔符 ‘{...
  • shell (计算机壳层) Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。...当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。 shell是一个命令语言解释器,它拥有自己内建的...
  • shell脚本中的awk命令

    千次阅读 2019-06-20 21:51:36
    sed命令疑难问题 sed -ri ‘/^H+/a 11111111111’ /etc/sysconfig/network 在文件里在以至少一个H开头的行追加111111111 sed -ir ‘/^H+/a 11111111111’ /etc/sysconfig/network 追加不会成功。在 /etc/...
  • shell脚本基本语法详解

    万次阅读 多人点赞 2016-09-28 20:16:04
    编写shell脚本的时候,最前面要加上一行:#!/bin/bash,因为linux里面不仅仅只有bash一个解析器,还有其它的,它们之间的语法会有一些不同,所以最好加上这一句话,告诉系统要用这个解析器。一.shell变量shell变量和...
  • shell脚本中的sed命令用法

    千次阅读 2019-06-20 21:46:26
    Shell脚本sed命令 知识要点 sed命令的工作原理 sed的常用编辑命令 sed的替换命令 sed的特殊用法 sed命令的工作原理 sed是一种支持正则表达式的交互式流编辑器(stream editor) 脚本中修改文本或者文本...
  • 基本的bash shell命令

    千次阅读 2017-09-13 22:59:47
    大多数linux发行版的默认都是GUNbash shell,本次将介绍bash shell的一些基本特征,bashshell基本命令来操作linux文件和目录。 1.启动shell Gun bash能提供对linux系统的交互式访问,它是作为普通的程序运行的,...
  • linux系统中的shell脚本||脚本常用的命令

    万次阅读 多人点赞 2018-05-21 20:41:05
    脚本的编写 这里写代码片
  • shell脚本执行命令 #!/bin/bash mv ./oss-* ./backup && rm -rf ./targetFile.txt 把上面内容保存为test.sh 然后执行 ./test.sh 这个shell脚本目的是先把oss-开头的文件移动到 backup文件夹下,然后才执行...
  • Hadoop的Shell脚本命令

    2018-11-14 15:51:05
    1、Shell 常用命令介绍 1.1 -ls 使用方法 hadoop fs -ls [-R] <args> 功能:显示文件、目录信息。 示例:hadoop fs -ls /user/hadoop/file1 1.2-mkdir 使用方法 hadoop fs -mkdir [-p] <paths> ...
  • linux--shell脚本常用脚本命令

    千次阅读 2018-06-14 22:39:03
    shell也是操作系统中的一个软件,他包含zailinux内核的外面,为了用户和内核之间的交互提供了一个接口系统中的命令用shell去解释shell接收到系统回应的输出并显示其到屏幕上什么是shell脚本?脚本是一种解释型语言 #...
  • shell脚本 http://www.92csz.com/study/linux/12.htm vim命令 https://www.cnblogs.com/yangjig/p/6014198.html shell命令: 通配符:可以使用*来匹配零个或多个字符,而用?匹配一个字符 输入输出从定向:输入...
  • 一.变量: i.变量定义: 语法: variable_name=variable_value 例如: exe_cmd="java -jar $1 -cfp $2 -lfp $3 -tn1 $4 -tn2 $5 -d $6 -cld...2)变量值为普通字符串时,使用单引号(''),值中命令是不识别的。 3)变量...
  • shell脚本中执行命令Shell is a command-line interpreter that allows the user to interact with the system. It is responsible for taking inputs from the user and displaying the output. Shell是一个命令行...
  • Linux系统Shell脚本中的echo命令

    千次阅读 2019-04-16 16:54:41
    Linux系统Shell脚本中的echo命令 echo的作用 输出字符串 格式 echo "字符串内容" 一,显示转义字符 转义字符的格式 \进行转义的操作 例如\* \" 常见的转义字符 特殊符号以外的转义,需要加上-e去开启...
  • source会在当前shell环境中执行,如果直接执行,会开启一个子shell,在子shell中进入了该目录,脚本执行完后会退出子shell回到父shell环境 2. if语句 判断文件夹是否存在: myPath="/var/log/httpd/
  • shell脚本快速执行命令

    千次阅读 2019-03-24 11:26:02
    shell脚本快速执行命令1.gnome-terminal2.基本用法3.启动后自动执行命令4.demo15.demo2 1.gnome-terminal 常用,置顶: gnome-terminal -x bash -c "子终端要执行的命令1;2;...." gnome-terminal -t "title-name" -x...
  • exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行。 常用方法: 格式:exit n 退出shell脚本,并设置退出码为n。 格式:exit 退出shell脚本,退出码为最后一个命令的退出码(即 $?)。 格式:trap ...
  • shell脚本--sed的用法

    万次阅读 多人点赞 2018-05-17 01:04:27
    sed在处理文本时是逐行读取文件内容,读到匹配的行就根据指令做操作,不匹配就跳...本文主要介绍sed的一些基本用法,并通过shell脚本演示sed的使用实例。 1.sed的使用方法,调用sed 命令的语法有两种: 一.在命令...
  • 1.通过纯shell脚本命令进行每天定时重启 while true do #脚本启动当前时间 nowtime=$(date "+%Y-%m-%d %H:%M:%S") echo "脚本启动开始时间:$starttime" #下次重启时间(明天凌晨05点30分) restarttime="$(date -d ...
  • Shell编程(脚本)的常用命令和语句

    千次阅读 2015-07-07 20:25:47
    一些常用的Shell编程(脚本命令和语句,可以满足一般需求。
  • 命令行替换 (1)反引号字符(`) 示例 test=`date` !/bin/bash test=`date` echo &amp;quot;The date and time are: &amp;quot; $test (2)$()格式 示例 ...$t...

空空如也

1 2 3 4 5 ... 20
收藏数 138,032
精华内容 55,212
关键字:

定时重启程序shell