老男孩教育50期學員左婷婷-day05-linux命令-下部


 
 

 

linux命令-下部

 

作者:左婷婷

歸檔:學習筆記

2018/7/13

 

快捷鍵:

Ctrl + 1    標題1

Ctrl + 2    標題2

Ctrl + 3    標題3

Ctrl + 4    實例

Ctrl + 5    程序代碼

Ctrl + 6    正文

格式說明:

藍色字體:註釋

×××背景:重要

綠色背景:注意


 

老男孩教育教學核心思想6重:重目標、重思路、重方法、重實踐、重習慣、重總結

學無止境,老男孩教育成就你人生的起點!

聯繫方式:

網站運維QQ交流羣:

Linux  385168604

架構師 390642196

Python 29215534

大數據 421358633

官方網站:

http://www.oldboyedu.com


 

1.1 /data 移動到 /root目錄下面... 1

1.2 進入/root目錄下的data目錄,刪除oldboy.txt文件... 1

1.2.1 #如何備份?... 1

1.2.2 #修改文件名  重命名... 2

1.2.3 #強制刪除文件... 2

1.2.4 #強制刪除目錄... 2

1.2.5 #find命令... 2

1.2.6 找出以.txt結尾的文件... 3

1.2.7 * 所有字符 任意字符... 3

1.3 接第6題,退出到上一級目錄刪除 data目錄。(原來在/root/data. 4

1.3.1 cd  ..   進入當前目錄的上一級目錄... 4

1.3.2 cd  .    進入當前目錄... 4

1.4 請給出輸出test.txt文件內容時,不包含oldboy字符串的命令。. 4

1.4.1 方法1 -grep. 4

1.4.2 方法2 -head. 4

1.4.3 #方法3  awk. 5

1.4.4 #方法4  sed. 5

1.5 #9 請用一條命令完成創建目錄/oldboy/test,即創建/oldboy目錄及/oldboy/test 5

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

1.6.1 #方法1 head +  tail 6

1.6.2 #方法2 sed 取行... 7

1.6.3 #方法3 awk. 8

1.7 總結:... 8

1.8 預習: 8

 

 

 

 

 


1.1 /data 移動到 /root目錄下面

#move   mv

 

[root@oldboyedu50 ~]# mv  /data/ /root/   將data文件移到root文件下

[root@oldboyedu50 ~]# ls -l /data

ls: cannot access /data: No such file or directory       沒有這個目錄

[root@oldboyedu50 ~]# ls -l /root/

total 44

-rw-------. 1 root root  1124 Jul 10 18:25 anaconda-ks.cfg

drwxr-xr-x. 2 root root  4096 Jul 11 02:13 data

-rw-r--r--. 1 root root 21736 Jul 10 18:25 install.log

-rw-r--r--. 1 root root  5890 Jul 10 18:24 install.log.syslog

1.2  進入/root目錄下的data目錄,刪除oldboy.txt文件

1.2.1 #如何備份?

[root@oldboyedu50 ~]# cd /root/data/

[root@oldboyedu50 data]# pwd

/root/data

[root@oldboyedu50 data]# ls -l

total 12

-rw-r--r--. 1 root root   7 Jul 11 02:13 alex.txt

-rw-r--r--. 1 root root  14 Jul 11 01:16 lidao.txt

-rw-r--r--. 1 root root 254 Jul 11 01:08 oldboy.txt

[root@oldboyedu50 data]# cp oldboy.txt  oldboy.txt.bak     備份

[root@oldboyedu50 data]# ls -l

total 16

-rw-r--r--. 1 root root   7 Jul 11 02:13 alex.txt

-rw-r--r--. 1 root root  14 Jul 11 01:16 lidao.txt

-rw-r--r--. 1 root root 254 Jul 11 01:08 oldboy.txt

-rw-r--r--. 1 root root 254 Jul 11 02:56 oldboy.txt.bak

 

 

.bak  === backup

1.2.2 #修改文件名  重命名

[root@oldboyedu50 data]# mv oldboy.txt  oldgirl.txt      將oldboy.txt文件改名爲oldgirl.txt

[root@oldboyedu50 data]# ls -l

total 16

-rw-r--r--. 1 root root   7 Jul 11 02:13 alex.txt

-rw-r--r--. 1 root root  14 Jul 11 01:16 lidao.txt

-rw-r--r--. 1 root root 254 Jul 11 02:56 oldboy.txt.bak

-rw-r--r--. 1 root root 254 Jul 11 01:08 oldgirl.txt

1.2.3 #強制刪除文件

[root@oldboyedu50 data]# rm  -f  /root/data/oldgirl.txt    強制刪除文件

[root@oldboyedu50 data]# ls -l /root/data/

total 12  

-rw-r--r--. 1 root root   7 Jul 11 02:13 alex.txt

-rw-r--r--. 1 root root  14 Jul 11 01:16 lidao.txt

-rw-r--r--. 1 root root 254 Jul 11 02:56 oldboy.txt.bak

 

1.2.4 #強制刪除目錄

[root@oldboyedu50 data]# rm -rf  /tmp/data/      刪除目錄

[root@oldboyedu50 data]# ls -l /tmp/data

ls: cannot access /tmp/data: No such file or directory

 

rm -rf  /tmp/data/

rm -fr /tmp/data/

1.2.5 #find命令

[root@oldboyedu50 data]# #find 在×××  -類型  f   -名字 "oldboy.txt"

[root@oldboyedu50 data]#

[root@oldboyedu50 data]# find /root/     -type  f  -name  "oldboy.txt"

/root/oldboy.txt

 

-type 找什麼類型的 f  file      (文件)

                   d  directory (目錄)

-name "叫什麼名字的"

1.2.6 找出以.txt結尾的文件

oldboy.txt lidao.txt alex.txt

[root@oldboyedu50 data]# find /root/     -type  f  -name  "*.txt"  找出以.txt結尾的所有文件

/root/oldboy.txt

/root/lidao.txt

/root/alex.txt

/root/data/lidao.txt

/root/data/alex.txt

[root@oldboyedu50 data]# #

1.2.7 * 所有字符 任意字符

[root@oldboyedu50 data]# find /root/     -type  f  -name  "*.txt"

/root/oldboy.txt

/root/lidao.txt

/root/alex.txt

/root/data/lidao.txt

/root/data/alex.txt

[root@oldboyedu50 data]# find /root/     -type  f  -name  "*.txt"|xargs ls -l find命令交給了管道xargs處理

-rw-r--r--. 1 root root  0 Jul 11 03:21 /root/alex.txt

-rw-r--r--. 1 root root  7 Jul 11 02:13 /root/data/alex.txt

-rw-r--r--. 1 root root 14 Jul 11 01:16 /root/data/lidao.txt

-rw-r--r--. 1 root root  0 Jul 11 03:21 /root/lidao.txt

-rw-r--r--. 1 root root  0 Jul 11 03:21 /root/oldboy.txt

 

find +|xargs 配合

||xargs區別

老男孩教育每日一題-2017518-說說|(管道)|xargs(管道xargs)的區別

https://blog.51cto.com/lidao/1927347

 

1.3 接第6題,退出到上一級目錄刪除 data目錄。(原來在/root/data

1.3.1 cd ..   進入當前目錄的上一級目錄

1.3.2 cd .    進入當前目錄

#移動xxxxx文件 到當前目錄

#複製xxxxx文件 到當前目錄

4.8 已知文件test.txt內容

test

lidao

oldboy

創建測試文件:

mkdir -p /data

cat >/data/test.txt<<EOF

test

liyao

oldboy

EOF

1.4 請給出輸出test.txt文件內容時,不包含oldboy字符串的命令。

1.4.1 方法1 -grep

[root@oldboyedu50 data]# #grep 過濾 顯示你要或不要的內容

[root@oldboyedu50 data]# grep  "oldboy"  /data/test.txt 找出oldboy

oldboy

[root@oldboyedu50 data]# grep -v "oldboy"  /data/test.txt   過濾oldboy

test

liyao

 

 

 

1.4.2 方法2 -head

[root@oldboyedu50 data]# head -n2 /data/test.txt   取出文件前兩行

test

liyao

[root@oldboyedu50 data]# head -2 /data/test.txt –n2可以用2替換

test

liyao

#head 顯示文件的前幾行內容 默認顯示前10

#tail 顯示文件的最後幾行內容 默認顯示最後10

#顯示文件最後一行

[root@oldboyedu50 data]# tail -1 /data/test.txt

oldboy

1.4.3 #方法3  awk

[root@oldboyedu50 data]# #awk

[root@oldboyedu50 data]# #gawk

[root@oldboyedu50 data]# awk '/oldboy/'  /data/test.txt

oldboy

[root@oldboyedu50 data]# awk '!/oldboy/'  /data/test.txt

test

liyao

 

1.4.4 #方法4  sed

[root@oldboyedu50 data]# sed '/oldboy/d'  /data/test.txt

test

liyao

[root@oldboyedu50 data]# #delete

 

小結:

1.grep 過濾

2.head tail

3.sed awk (瞭解)

 

1.5 #9 請用一條命令完成創建目錄/oldboy/test,即創建/oldboy目錄及/oldboy/test

 

[root@oldboyedu50 data]# mkdir -p  /oldboy/test   - p創建多層目錄

[root@oldboyedu50 data]# ls /oldboy/

test

#-p 創建多層目錄

 

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

 

[root@oldboyedu50 data]# seq 10     生成1-10的數字序列

1

2

3

4

5

6

7

8

9

10

 

 

seq 40  >/data/ett.txt

 

1.6.1 #方法1 head + tail 

root@oldboyedu50 data]# head -30 /data/ett.txt |tail     顯示前30行

[root@oldboyedu50 data]# head -30 /data/ett.txt |tail -11      顯示前三十行的最後十行

20

21

22

23

24

25

26

27

28

29

30

 

#顯示文件的第3040

 

 head -40 /data/ett.txt |tail -11

 tail -11 /data/ett.txt

 

 

1.6.2 #方法2 sed 取行

[root@oldboyedu50 data]# sed -n  '3p' /data/ett.txt

3

#-n 取消默認輸出(sed命令不會把文件內容都顯示出來)

[root@oldboyedu50 data]# sed -n  '3p' /data/ett.txt

3

#print

[root@oldboyedu50 data]# sed -n  '20p' /data/ett.txt

20

[root@oldboyedu50 data]# sed -n  '20,30p' /data/ett.txt

20

21

22

23

24

25

26

27

28

29

30

 

 

1.6.3 #方法3 awk

[root@oldboyedu50 data]# awk  'NR==3' /data/ett.txt

3

[root@oldboyedu50 data]# #     'NR行號 等於  3'

[root@oldboyedu50 data]# awk  'NR==20,NR==30' /data/ett.txt

20

21

22

23

24

25

26

27

28

29

30

 

 

小結:

1.head+tail

2.sed

3.awk 

 

 

1.7 總結:

1.簡單的命令

2.find +|xargs

3.三劍客 grep sed (過濾 取行)  awk 取行

 

1.8 預習:

1.sed替換

2.設置別名

linux基礎優化:

1.添加用戶

2.劫財劫色(iptables selinux)關閉

3.如何修改系統的字符集

                                                    


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章