文件的行操作

1.1 8

輸出test.txt文件內容時,不包含clsn字符串的命令

文件內容:

[root@znix ~]# cat /data/test.txt
test
liyao
clsn

1.1.1 方法一grep

使用grep命令,找什么就寫什么

-v 參數是排除的意思

[root@znix ~]# grep -v "clsn" /data/test.txt
test
liyao

1.1.2 方法二head

使用head顯示文件前2行信息(-2參數是顯示兩行),默認顯示前10行。

[root@znix ~]# head -2 /data/test.txt
test
liyao

1.1.3 方法三 sed

sed命令使用單引號

sed命令主要用于刪除

'/clsn/d' 表示刪除clsn這個內容

[root@znix ~]# sed '/clsn/d' /data/test.txt
test
liyao

'3d'? 表示刪除第三行

[root@znix ~]# sed  '3d'  /data/test.txt
test
liyao

1.1.4 方法四 awk

使用awk查找文本里的clsn/并顯示:

[root@znix ~]# awk '/clsn/' /data/test.txt
clsn

前面加!表示排除這個內容,不顯示這個內容。

[root@znix ~]# awk '!/clsn/' /data/test.txt
test
liyao

1.2 9

用一條命令完成創建目錄/clsn/test,即創建/clsn目錄及/clsn/test

創建多級目錄時需要添加參數 -p 表示創建多級目錄。

[root@znix ~]# mkdir -p /clsn/test
[root@znix ~]# ls /clsn/
alex.txt  alex.txt.bak  clsn.txt  test  test.sh  t.sh
[root@znix ~]# ls -l  /clsn/test
total 0

1.3 10

已知/tmp下已經存在test.txt文件,如何執行命令才能把/mnt/test.txt拷貝到/tmp下覆蓋掉/tmp/test.txt,而讓系統不提示是否覆蓋(root權限下)。

1.3.1 方法一:

????? \cp 取消別名

[root@znix data]# \cp /mnt/test.txt /tmp/

1.3.2 方法二:

使用命令的絕對路徑

 [root@znix data]# /bin/cp /mnt/test.txt /tmp/

1.4 11

查看ett.txt文件(共100行)內第20到第30行的內容

1.4.1 創建該文件

使用seq命令創建一個100行的文件。

[root@znix ~]# seq 5
1
2
3
4
5
[root@znix ~]#seq 100 >ett.txt

1.4.2 方法一

使用head找出前30行,通過管道傳給tial,再使用tail找出后11行,然后輸出。

[root@znix ~]# head -30 ett.txt |tail -11
20
21
22
23
24
25
26
27
28
29
30

1.4.3 方法二

使用sed查找20-30行,p表示行數,-n表示取消默認輸出。

[root@znix ~]# sed -n '20,30p'  ett.txt
20
21
22
23
24
25
26
27
28
29
30

1.4.4 方法三

????? NR表示行,逗號表示2030,兩個等于號才是真正的等于

[root@znix ~]# awk 'NR==20,NR==30' ett.txt

????? &&表示和, => 20大于等于20 <=30 小于等于30

[root@znix ~]# awk 'NR>=20 && NR<=30' ett.txt
20
21
22
23
24
25
26
27
28
29
30

1.4.5 方法四

由于這個文件的第20行正好是20。使用grep找到20并輸出,-A10 表示輸出后面的10行。

[root@znix ~]# grep -A10 "20"  ett.txt
20
21
22
23
24
25
26
27
28
29
30

1.5 13

/clsn目錄及其子目錄下所有以擴展名.sh結尾的文件中,文件含.clsn的字符串全部替換為znix

1.5.1 創建環境

mkdir -p /clsn/test
cd /clsn
echo "clsn">test/del.sh
echo "clsn">test.sh
echo "clsn">t.sh
touch clsn.txt
touch alex.txt

1.5.2 方法一

sed生效需要增加 -i 參數。

使用find找在/clsn 目錄下的 文件,名字是.sh 結尾的,使用管道xgras? 傳給sed,然后使用's#要被替換的內容#替換的內容#g' 文件進行修改。

[root@znix clsn]# find /clsn/ -type f -name "*.sh"|xargs sed 's#clsn#znix#g'  -i
znix
znix
znix

1.5.3 方法二

$( ) 先執行括號里面命令,再執行前面的命令

[root@znix clsn]# sed 's#clsn#znix#g' $(find /clsn/ -type f -name "*.sh")
znix
znix
znix

?

轉載于:https://www.cnblogs.com/clsn/p/7505118.html

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

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

相關文章

linux多線程編程5--信號量(semaphore)

信號量本質上是一個非負的整數計數器&#xff0c;也是UNIX中古老的實現進程互斥和同步的手段&#xff0c;Linux下信號量概念是在線程中&#xff0c;信號則在進程控制中&#xff0c;不過原理差不多&#xff0c;最基本最經典的操作莫過于P、V操作了&#xff0c;能實現進程、線程的…

【leetcode】910. Smallest Range II

題目如下&#xff1a; 解題思路&#xff1a;我的思路是先找出最大值。對于數組中任意一個元素A[i]來說&#xff0c;如果A[i] K 是B中的最大值&#xff0c;那么意味著從A[i1]開始的元素都要減去K&#xff0c;即如果有A[i] K > A[-1] - K&#xff0c;那么A[i] K 就可以作為…

CMOS圖像傳感器架構的演變

01、 引言 圖像傳感器目前用于多種應用。自 1969 年電荷耦合器件 (CCD) 發明以來&#xff0c;固態圖像傳感器已蔓延到各種消費市場&#xff0c;例如小型攝像機和數碼相機。自 2005年以來已成為主流固態圖像傳感器的 CMOS 圖像傳感器在為 CCD 開發的技術的基礎上不斷發展。除了…

Linux系統中/dev/mtd與/dev/mtdblock的區別

MTD(memory technology device內存技術設備)是用于訪問memory設備&#xff08;ROM、flash&#xff09;的Linux的子系統。MTD的主要目的是為了使新的memory設備的驅動更加簡單&#xff0c;為此它在硬件和上層之間提供了一個抽象的接口。MTD的所有源代碼在/drivers/mtd子目錄下。…

Python判斷變量的數據類型的兩種方法

2019獨角獸企業重金招聘Python工程師標準>>> 1、isinstance(變量名&#xff0c;類型) def varargsql(self, sql, *args):if isinstance(args, tuple):self.cursor.execute(sql, args)self.conn.commit() 2、通過與其他已知類型的常量進行對比&#xff08;type()&…

svn圖標的含義

http://www.cnblogs.com/genhaosan/articles/5129791.html 轉載于:https://www.cnblogs.com/wangc04/p/6400477.html

基于事件的視覺傳感器

在之前的文章里 人工智能與圖像傳感器_滄海一升的博客-CSDN博客_人工智能和傳感器的關系第一類是圖像傳感器與人工智能計算相結合,即圖像傳感器模組除了可以輸出圖像之外,還可以直接輸出人工智能算法計算的結果。另一類智能圖像傳感器則是為人工智能應用專門設計的圖像傳感器…

RocketMQ多Master多Slave模式部署

每個 Master 配置一個 Slave&#xff0c;有多對Master-Slave&#xff0c;HA采用同步雙寫方式&#xff0c;主備都寫成功&#xff0c;向應用返回成功。 優點&#xff1a;數據與服務都無單點&#xff0c;Master宕機情況下&#xff0c;消息無延遲&#xff0c;服務可用性與數據可用性…

FPGA的ip核之概念和分類

ip核之概念和分類 IP&#xff08;Intellectual Property&#xff09;內核模塊是一種預先設計好的甚至已經過驗證的具有某種確定功能的集成電路、器件或部件。它有幾種不同形式。IP內核模塊有行為&#xff08;behavior&#xff09;、結構&#xff08;structure&#xff09;和物理…

codeforces 1045 D. Interstellar battle

題目大意&#xff1a;一顆樹&#xff0c;給定每個點消失的概率&#xff0c;求出連通塊的期望值。要求支持修改消失概率的操作并且給出每次修改過后的期望值。注意被破壞的點不能算入連通塊中。 數據范圍&#xff0c;時限1S。 傳送門 D. Interstellar battle 我們考慮做有根樹的…

RecyclerView(滾動控件)的用法

1.首先在build.gradle中添加依賴庫 compile com.android.support:recyclerview-v7:24.2.1 2.修改activity_main.xml <LinearLayout ......<android.support.v7.widget.RecyclerViewandroid:id"id/recycler_view"android:layout_width"maych_parent"a…

Verilog中case(1‘b1)的使用說明

在用Verilog進行RTL代碼編寫的時候基本不會用到case(1‘b1)&#xff0c;而且一般的語法說明也如下&#xff1a; case(case_expr)condition1 : true_statement1 ;condition2 : true_statement2 ;……default : default_sta…

Cookie中文存儲頁面500問題

前段時間做cookie存儲&#xff0c;直接用的菜鳥教程中的cookie設置方法&#xff0c;方法如下&#xff1a; function setCookie(cname,cvalue,exdays) {var d new Date();d.setTime(d.getTime()(exdays*24*60*60*1000));var expires "expires"d.toGMTString();docum…

Behave用戶自定義數據類型

在step句子中, 所有的參數默認是string類型, 如果用戶想使用復雜的或者其他數據類型, 就需要了解以下bahave中的數據類型. behave的數據類型轉換器是在parse和cfparse中支持. parse模塊是string.format的逆函數. parse_type是基于parse的擴展, 簡化了自定義數據類型的產生. pa…

IC Compiler指南——數據準備

一、概述 ICC數據設置的文件關系框圖如圖&#xff1a; 后端工具在數據設置階段需要對兩大類數據進行設置&#xff0c;包括從前端設計繼承的綜合數據 以及后端設計需要的物理數據。 綜合數據主要包括前端邏輯綜合已經設置過的邏輯與時序庫文件、設計約束文件sdc以 及綜合網表文…

iOS Xcode全面剖析

前言 前幾天在公司內部做了一次關于iOS的入門分享&#xff0c;聽眾有PHP、Web、Android、測試、產品、UI等&#xff0c;主旨是力求不懂iOS的人能了解iOS的開發流程&#xff0c;聽后都能創建一個iOS項目并打印HelloWorld。&#xff08;這是背景&#xff09;你想想就這么點需求&a…

VS2013編譯OBS源碼

obs源碼來之&#xff1a;https://sourceforge.net/projects/obsproject/ 下載源碼之后直接打開sln索引文件就行 項目打開之后 obs作為啟動項 直接編譯就行&#xff0c;正常應該一下就能編譯成功。 在運行的時候可能會報錯&#xff1a; 這個問題就需要制定一下編譯輸出路徑&…

Y/C分離/2/3D濾波器

待整理http://blog.csdn.net/yangzhifu/article/details/7388101 http://wenku.baidu.com/view/f997d705cc1755270722086d.html

構建之法閱讀筆記04

敏捷開發是一系列價值觀和方法論的集合。在敏捷的大旗下&#xff0c;我們可以看到好幾種軟件開發的方法論&#xff0c;我們在這里主要分析Scrum這個方法論。 從Scrum方法論中分析&#xff0c;敏捷開發一共分四步&#xff1a; 第一步&#xff1a;找出完成產品需要做的事情——Pr…