美文网首页
shell入门(二)

shell入门(二)

作者: b470b9fc7145 | 来源:发表于2017-09-14 18:54 被阅读16次

先写一个开头,省的以后忘记写

逻辑运算

if else

a=10
b=20
if [ $a == $b ]
then
   echo "a 等于 b"
elif [ $a -gt $b ]
then
   echo "a 大于 b"
elif [ $a -lt $b ]
then
   echo "a 小于 b"
else
   echo "没有符合的条件"
fi

for

for loop in 1 2 3 4 5
do
    echo "The value is: $loop"
done

while

#!/bin/sh
int=1
while(( $int<=5 ))
do
    echo $int
    let "int++"
done

文件操作

n > file    将文件描述符为 n 的文件重定向到 file。
n >> file   将文件描述符为 n 的文件以追加的方式重定向到 file。
echo "It is a test" > myfile

sed查找和替换

sed 可删除(delete)、改变(change)、添加(append)、插入(insert)、合、交换文件中的资料行,或读入其它档的资料到文>件中,也可替换(substuite)它们其中的字串、或转换(tranfer)其中的字母等等。例如将文件中的连续空白行删成一行、"local"字串替换成"remote"、"t"字母转换成"T"、将第 10 行资料与第 11 资料合等。
总合上述所言,当 sed 由标准输入读入一行资料并放入 pattern space 时,sed 依照 sed script 的编辑指令逐一对 pattern space 内的资料执行编辑之後,再由 pattern space 内的结果送到标准输出,接着再将下一行资料读入。如此重执行上述动作,直至读完所有资料行为止。

小结,记住:

(1)sed 总是以行对输入进行处理
(2)sed 处理的不是原文件而是原文件的拷贝

主要参数:

-e:执行命令行中的指令,例如:sed -e 'command' file(s)
-f:执行一个 sed 脚本文件中的指令,例如: sed -f scriptfile file(s)
-i:与-e的区别在于:当使用-e 时,sed 执行指令并不会修改原输入文件的内容,只会显示在 bash 中,而使用-i 选项时,sed 执行的指令会直接修改原输入文件。
-n:读取下一行到 pattern space。

参考文档

shell 学习第十天---sed 查找与替换

相关文章

  • shell入门(二)

    先写一个开头,省的以后忘记写 逻辑运算 if else for while 文件操作 sed查找和替换 sed 可...

  • Shell 概述

    学习 Shell 主要包括的内容: Shell 脚本入门 Shell 变量 Shell 内置命令 Shell 运算...

  • shell基础

    shell入门

  • Shell入门笔记

    Shell脚本:Linux Shell脚本学习指南菜鸟教程 - Shell教程Linux入门 - Shell脚本是...

  • bash入门

    Bourne-Again SHell; Born Again SHell Introduction 写作“入门”,...

  • Shell基础入门(二)

    基本运算符 下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20: 注意:条件表达式要放在方括号...

  • shell入门学习(1)——语法基础

    本文为转载,原文:shell入门学习(1)——语法基础 介绍 Shell Script,Shell脚本与Windo...

  • 0x01 Scala入门-基本shell交互操作

    Scala入门-基本shell交互操作

  • 2019-09-19

    Shell 概述 Shell 解析器 查看系统shell解析器 默认解析器为bash Shell 脚本入门 新建h...

  • shell脚本

    shell入门 脚本格式入门 脚本以!/bin/bash开头,指定解析器 第一个shell脚本 需求 创建shel...

网友评论

      本文标题:shell入门(二)

      本文链接:https://www.haomeiwen.com/subject/kfzdsxtx.html