2.sed命令

2.sed命令

sed基本用法:

sed: Stream EDitor

行編輯器 (全屏編輯器: vi)

?

sed: 模式空間

默認不編輯原文件,僅對模式空間中的數據做處理;而后,處理結束后,將模式空間打印至屏幕;

?

?

sed [options] 'AddressCommand' file ...

-n: 靜默模式,不再默認顯示模式空間中的內容

-i: 直接修改原文件

-e SCRIPT -e SCRIPT:可以同時執行多個腳本

-f /PATH/TO/SED_SCRIPT

sed -f /path/to/scripts ?file

-r: 表示使用擴展正則表達式

?

Address

1StartLine,EndLine

比如1,100

$:最后一行

2/RegExp/

/^root/

3/pattern1/,/pattern2/

第一次被pattern1匹配到的行開始,至第一次被pattern2匹配到的行結束,這中間的所有行

4LineNumber

指定的行

5StartLine, +N

startLine開始,向后的N行;

?

Command

d: 刪除符合條件的行;

p: 顯示符合條件的行;

a \string: 在指定的行后面追加新行,內容為string

\n:可以用于換行

i \string: 在指定的行前面添加新行,內容為string

r FILE: 將指定的文件的內容添加至符合條件的行處

w FILE: 將地址指定的范圍內的行另存至指定的文件中;

s/pattern/string/修飾符: 查找并替換,默認只替換每行中第一次被模式匹配到的字符串

加修飾符

g: 全局替換

i: 忽略字符大小寫

s///: s###, s@@@

\(\), \1, \2

?

l..e: like-->liker

??love-->lover

??

??like-->Like

??love-->Love

?

&: 引用模式匹配整個串

????sed '/l..e/&r/g' sed.txt

sed '/\(l..e\)/\1r/g' sed.txt 后項引用

sed '/l\(..e\)/L\1/g' sed.txt

sed練習:

1、刪除/etc/grub.conf文件中行首的空白符;

sed -r 's@^[[:spapce:]]+@@g' /etc/grub.conf

2、替換/etc/inittab文件中"id:3:initdefault:"一行中的數字為5

sed 's@\(id:\)[0-9]\(:initdefault:\)@\15\2@g' /etc/inittab

3、刪除/etc/inittab文件中的空白行;

sed '/^$/d' /etc/inittab

4、刪除/etc/inittab文件中開頭的#;

sed 's@^#@@g' /etc/inittab

5、刪除某文件中開頭的#號及后面的空白字符,但要求#號后面必須有空白字符;

sed -r 's@^#[[:space:]]+@@g' /etc/inittab

6、刪除某文件中以空白字符后面跟#類的行中的開頭的空白字符及#

sed -r 's@^[[:space:]]+#@@g' /etc/inittab

7、取出一個文件路徑的目錄名稱;

echo "/etc/rc.d/" | sed -r 's@^(/.*/)[^/]+/?@\1@g'

基名:

echo "/etc/rc.d/" | sed -r 's@^/.*/([^/]+)/?@\1@g'

?

轉載于:https://www.cnblogs.com/flyback/articles/5862838.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/395109.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/395109.shtml
英文地址,請注明出處:http://en.pswp.cn/news/395109.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

因此,您是一名新軟件工程師。 讓我們面對一些事實,揭穿一些神話。

by Trey Huffine通過Trey Huffine 因此,您是一名新軟件工程師。 讓我們面對一些事實,揭穿一些神話。 (So you’re a new Software Engineer. Let’s face some facts and debunk some myths.) When we’re learning to become software engineers, we’…

java前端接收回顯圖片_圖片上傳并回顯后端篇

圖片上傳并回顯后端篇我們先看一下效果繼上一篇的圖片上傳和回顯,我們來實戰一下圖片上傳的整個過程,今天我們將打通前后端,我們來真實的了解一下,我們上傳的文件,是以什么樣的形式上傳到服務器,難道也是一…

關于scanf和cin的大數據讀入效率

關于scanf和cin的大數據讀入效率好多大佬都說scanf的讀入效率比cin高&#xff0c;我也當練手&#xff0c;用書上的程序用了個測試&#xff0c;程序如下&#xff1a;#include<iostream>#include<ctime>#include<cstdio>#include<windows.h>using namesp…

OBJECT_ID()的使用方法

數據庫中每個對像都有一個唯一的ID值&#xff0c;用Object_name(id)可以根據ID值得到對像的名稱&#xff0c;object_id(name)可以根據對像名稱得到對象的IDobject_id()只能返回用戶創建的對像的ID,像以sys開頭的表都是系統表所以返回不了的 如下列&#xff1a; select object_n…

Django之model補充:一對多、跨表操作

表結構概述 model.py : class Something(models.Model):name models.CharField(max_length32)class UserType(models.Model):caption models.CharField(max_length32)s models.ForeignKey(Something)# 超級管理員&#xff0c;普通用戶&#xff0c;游客&#xff0c;黑河class…

農民約翰是一個驚人的會計_我的朋友約翰在CSS Grid中犯了一個錯誤。 不要像約翰-這樣做。

農民約翰是一個驚人的會計It had been two years and John had no job.已經兩年了&#xff0c;約翰沒有工作。 John was a smart 20-something guy. Okay, he had a job — but it wasn’t one he liked. It was too monotonous and was not nearly creative enough. His day …

zip直鏈生成網站_手把手教你如何用飛槳自動生成二次元人物頭像

【飛槳開發者說】李思佑&#xff0c;昆明理工大學信息與計算科學大四本科生&#xff1b;2018年和2019年兩次獲得全國大學生數學建模比賽國家二等獎&#xff1b;2020年美國數學建模比賽獲M獎。指導老師&#xff1a;昆明理工大學理學院朱志寧想畫出獨一無二的動漫頭像嗎&#xff…

Gradle入門到實戰(一) — 全面了解Gradle

聲明&#xff1a;本文來自汪磊的博客&#xff0c;轉載請注明出處 可關注個人公眾號&#xff0c;那里更新更及時&#xff0c;閱讀體驗更好&#xff1a; 友情提示由于文章是從個人公眾號拷貝過來整理的&#xff0c;發現圖片沒有正常顯示&#xff0c;沒關注公眾號的同學可通過如下…

java 0-9所有排列_java實現:鍵盤輸入從0~9中任意5個數,排列組合出所有不重復的組合,打印出來...

必有追加大分&#xff01;&#xff01;&#xff01;比如1.2.3.4.5共有120個組合12345&#xff0c;12354&#xff0c;12435&#xff0c;12453&#xff0c;12534&#xff0c;12543&#xff1b;13245&#xff0c;13254&#xff0c;13425&#xff0c;13452&#xff0c;13524&#x…

智能家居物聯網化將成為AWE大會最大看點

AWE大會已經在今日9點半開幕&#xff0c;AWE在今年將擴張至8個展館&#xff0c;其整體展示規模達到11萬平米&#xff0c;這是以往都無法匹敵的。海爾、美的、格力、海信、創維、TCL、康佳、格蘭仕、澳柯瑪、新飛、美菱、奧馬、方太、老板、萬和、萬家樂、華帝、帥康、櫻花、格美…

PHP 命名空間(namespace)

PHP 命名空間(namespace) PHP 命名空間(namespace)是在PHP 5.3中加入的&#xff0c;如果你學過C#和Java&#xff0c;那命名空間就不算什么新事物。 不過在PHP當中還是有著相當重要的意義。 PHP 命名空間可以解決以下兩類問題&#xff1a; 用戶編寫的代碼與PHP內部的類/函數/常量…

給matrix重新列名_如何認真升級Mac終端(甚至給它一個Matrix主題)

給matrix重新列名by Marcus Gardiner通過馬庫斯加德納(Marcus Gardiner) 如何認真升級Mac終端(甚至給它一個Matrix主題) (How to seriously upgrade your Mac terminal (and even give it a Matrix theme)) 藍色藥丸&#xff0c;紅色藥丸和通往極樂世界的3個步驟 (A Blue Pill…

javaweb 圖書管理系統完整代碼_看一名Java開發人員以紅隊思維五分鐘審計一套代碼(續)...

前言上篇文章的發布引起了很多讀者的瀏覽&#xff0c;有很多讀者也催更希望讀到續集&#xff0c;作者也收獲到讀者的鼓勵&#xff0c;說明這條路線對大家有幫助&#xff0c;是有意義的。所以&#xff0c;今天作者將繼續闡述在審計Java代碼時的思路。概述上篇文章所講的SQL注入和…

愛立信數據分析解決方案抓住物聯網發展機遇

愛立信在2016年1月6日至9日于美國拉斯維加斯舉辦的國際消費電子展&#xff08;CES&#xff09;上推出“用戶和物聯網數據分析”解決方案。該解決方案將能幫助運營商提高對用戶和物聯網終端的內部管理效率&#xff0c;同時探索跨越多個垂直領域的新型物聯網應用。 用戶和物聯網數…

Lua初學習 9-12 基礎

1&#xff1a;string 轉 number :tonumber(string) 2: number 轉 string :tostring(number) 3:string API: Lua中的字符串是不可變值&#xff0c;a "cocotang" string.gsub(a,"c","z") print(a) ----> cocotang 1獲得字符串長度:string.le…

iview下拉選

問題描述&#xff1a;創建場景&#xff0c;連續創建場景時&#xff0c;第一個場景創建成功后&#xff0c;第二次進入創建窗口&#xff0c;點擊測試任務下拉編輯只有上次創建成功的那一個任務候選&#xff0c;選中該任務中&#xff0c;關聯腳本也只有上次成功創建的唯一個候選下…

JAVA實現在面板中添加圖表_Java 創建PowerPoint圖表并為其添加趨勢線

圖表&#xff0c;是指將既得數據用圖形的方式表示出來。在前文中我們介紹過如何使用Java程序來為Excel文檔創建圖表的方法。本文將通過使用Java程序來演示如何創建PowerPoint圖表及為圖表添加趨勢線。趨勢線的運用能夠顯示數據的變化趨勢&#xff0c;同時能夠幫助預測數據的未來…

code warri_我參加了有史以來的第一屆Warri Tech宣傳活動。 這是我學到的。

code warriIn the city of Warri, Delta state of Nigeria, there is a saying that goes “Warri nor dey carry last, if e hard well well na draw”. This translates to “Warri is never behind in the scheme of things (events)”.在尼日利亞三角洲州的沃里市&#xff…

Socket編程小結

目錄&#xff1a; 什么是 socket&#xff1f;... 1 Internet 套接字的兩種類型... 1 網絡理論... 2 結構體... 2 本機轉換... 3 IP 地址和如何處理它們... 4 socket()函數... 4 bind()函數... 4 connect()程序... 5 listen()函數... 6 accept()函數... 6 send() and recv() 7 …

idea設置中文界面_《英雄聯盟手游》設置界面中文翻譯圖分享 外服漢化界面一覽...

導讀 英雄聯盟手游目前以及正式上線了&#xff0c;不過現在的話是沒有中文版的&#xff0c;只有外服&#xff0c;所有很多地方是看不懂的&#xff0c;也不明白的&#xff0c;這樣的話就需要翻譯了&#xff0c;具體要怎么設置會比較&#xff0c;相關的步驟是什么呢&#xff1f;下…