zoukankan      html  css  js  c++  java
  • shell笔记-----常用命令积累

    set -x

    # 执行指令前,先输出指令
    #set -o xtrace  # 与set -x效果一样 

    set -e

    在"set -e"之后出现的代码,一旦出现了返回值非零,整个脚本就会立即退出。有的人喜欢使用这个参数,是出于保证代码安全性的考虑。

    但有的时候,这种美好的初衷,也会导致严重的问题。

    dirname

    dirname命令去除文件名中的非目录部分,删除最后一个“/”后面的路径,显示父目录。

    [root@server80 ~]# dirname /root/minion.pem 
    /root
    

    mkdir -p /{a,b}

    同时在根目录下创建a和b两个文件夹

    tee命令

    将输出的内容输入到某个文件

    比如:

     EOF命令

    执行脚本的时候,需要往一个文件里自动输入N行内容。
    这个时候,就可以使用EOF结合cat命令进行行内容的追加了。

    EOF是END Of File的缩写,表示自定义终止符.既然自定义,那么EOF就不是固定的,可以随意设置别名,在linux按ctrl-d就代表EOF.
    EOF一般会配合cat能够多行文本输出.

    其用法如下:
    <<EOF        //开始
    ....
    EOF            //结束

    还可以自定义,比如自定义:
    <<BBB        //开始
    ....
    BBB              //结束

    此处需要注意的是区分大小写。

    通过cat配合重定向能够生成文件并追加操作,在它之前先熟悉几个特殊符号:
    < :输入重定向
    > :输出重定向
    >> :输出重定向,进行追加,不会覆盖之前内容
    << :标准输入来自命令行的一对分隔号的中间内容.

    1)向文件test.sh里输入内容。
    [root@slave-server opt]# cat << EOF >test.sh
    > 123123123
    > 3452354345
    > asdfasdfs
    > EOF
    
    [root@slave-server opt]# cat test.sh
    123123123
    3452354345
    asdfasdfs
    
    追加内容
    [root@slave-server opt]# cat << EOF >>test.sh
    > 7777
    > 8888
    > EOF
    
    [root@slave-server opt]# cat test.sh
    123123123
    3452354345
    asdfasdfs
    7777
    8888
    

    cat > test.sh << EOF                                     
    cat << EOF > test.sh

    这两种写法都可以

    备忘录

    脚本里不能有more less等

  • 相关阅读:
    redhat 找不到eth0等网卡设备
    oracle12.2 windows 安装卸载重新学习
    Ubuntu官方推荐U盘镜像写入工具(转载别人的)
    linux sh 脚本获取命令结果变变量然后post
    img图片过长自动截取隐藏
    python 数字类型
    Pycharm 常用快捷键 转自 暮良文王
    #python输入输出
    勤学如春起之苗,不见其增日有所长。缀学如磨刀之石,不见其损日有所亏
    感冒了,好难受
  • 原文地址:https://www.cnblogs.com/jinyuanliu/p/10697261.html
Copyright © 2011-2022 走看看