Linux常用高级文件操作命令

cat 查看文本

#cat    文件名      打印文件内容到当前屏幕上

#cat -n 文件名      显示行号

#cat > a.txt        可以用这种方法修改或者创建文件

手动输入文本

继续输入

...

快捷键(ctrl+d)结束

 

>  输出重定向(覆盖原来文本内容)

>> 输出重定向(在原来内容基础上追加)

<  输入重定向

 

# cat < a.sh

12345

abcde

 

ctrl+d 结束

ctrl+c 中断

 

tac 倒序显示

#tac 文件名 倒序显示文本内容

 

tee  写入文本内容

#ls | tee a.txt     执行前面命令的同时写入指定的文本文件

#ls | tee -a a.txt  -a在原来内容的基础上追加

 

cut  切割

# cat /etc/passwd | cut -d ":" -f 1

# cat /etc/passwd | cut -d :   -f 1

# cat /etc/passwd | cut -d:    -f 1

取第127

# cat /etc/passwd | cut -d ":" -f 1,2,7

取第2列到第7

# cat /etc/passwd | cut -d ":" -f 2-7

取第1列到第6

# cat /etc/passwd | cut -d ":" -f -6

6列以后的所有列

# cat /etc/passwd | cut -d ":" -f 6-

""在里面是特殊字符(可以被shell解释的)的时候必须要加

 

-d delimiter

指定分割符,和指定的分割符之间可没空格,默认分割符是一个tab

-f field  指定想要把第几列切出来 

 

wc   统计

#wc -l 文件名   统计行数

#wc -c 文件名   统计字符数(包括所有字符:比如换行符)

#wc -w 文件名统计word数(没有空格,就会认为是一个word

 

sort 排序

 

#cat a.txt 

Abcd

Defb

Caef

 

第一列字符不同的排序

# cat a.txt | sort 

Abcd

Caef

Defb

 

第一列字符相同的排序

# cat a.txt | sort

aAbcd

aCaef

aDefb

 

-t

-k

# cat a.txt 

e:Abcd

d:Defb

a:Caef

 

# cat a.txt | sort -t : -k 2

e:Abcd

a:Caef

d:Defb

 

# cat a.txt | sort -t : -k 2.2

a:Caef

e:Abcd

d:Defb

 

# cat a.txt |sort -n

9d:Defb

50a:Caef

60e:Abcd

 

# cat a.txt |sort -n -r

60e:Abcd

50a:Caef

9d:Defb

 

uniq 唯一

uniq他统计的是连续重复的行

# cat a.txt 源文本

12345

abcde

12345

abcde

abcde

 

被处理之后

[root@wing /var/ftp/1118ule]# cat a.txt | uniq -c

1 12345

1 abcde

1 12345

2 abcde

 

连续重复的行的数目

[root@wing /var/ftp/1118ule]# cat a.txt | sort | uniq -c

2 12345

3 abcde

 

只列出没有连续重复的行

[root@wing /var/ftp/1118ule]# cat a.txt | uniq -u

12345

abcde

12345

 

只列出连续重复的行

[root@wing /var/ftp/1118ule]# cat a.txt | uniq -d

abcde

 

diff  比较文本内容的不同

# diff -u a.txt  b.txt  > pacth.diff

patch 打补丁

# patch a.txt pacth.diff 

 

练习:

使用之前学过的各种命令统计本机eth0网卡的Ip地址(只要ip)  

统计在/bin/usr/bin两个目录下有多少个相同的命令

 

本文出自 “linux菜鸟训练营” 博客,转载请与作者联系!

你可能感兴趣的:(命令,高级命令,脚本常用)