第二节:思维导图学习Shell脚本编程之命令之美

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://dba10g.blog.51cto.com/764602/1607658

介绍一些常用的命令

cat命令一些用法


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

#cat -s命令压缩空行

  

[root@beijing test]# cat catinfo.txt

1

2

  

  

3

4

5

100

[root@beijing test]# cat -scatinfo.txt

1

2

  

3

4

5

  

#输出行号

[root@beijing test]# ls | cat -n

    1  1.txt

    2  2.txt

    3  cal.sh

    4  catinfo.txt

    5  cmd.sh

    6  date.sh

    7  func.sh

    8  index.sh

    9  menu.sh

   10  output.session

  

#-T: tab键^显示

[root@beijing test]# cat catinfo.txt

        public class A{

  

                System.out.println("helloshell");

       }

[root@beijing test]# cat -Tcatinfo.txt

^Ipublic class A{

  

^I^ISystem.out.println("helloshell");

^I}

终端回放


1

2

3

4

#所谓的终端回放,就是捕捉终端命令历史

#可以使用script命令

script -t 2> timing.log -aoutput.session

#注意需要关闭终端,才会保存timing.log

文件查找


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

#区分大小写

[root@beijing test]# find . -name"f*.sh"

./func.sh

#不区分大小写

[root@beijing test]# find . -iname"f*.sh"

./func.sh

./FUNC.SH

#基于路径查询(其实就是对路径进行完整匹配,不要考虑什么层级关系,把路径当成字符串处理)

[root@beijing ~]# find /etc -path"etc/*sysconfig/*network"

[root@beijing ~]# find /etc -path"*etc/*sysconfig/*network"

/etc/sysconfig/networking/profiles/default/network

/etc/sysconfig/network

  

#文件类型查找

#查找文件

 [root@beijing test]# find -type f

./out.txt

./index.sh

./cal.sh

./catinfo.txt

./func.sh

#查找目录

[root@beijing test]# find -type d

.

./aaa

  

  

基于时间的查找(atime:访问时间,ctime:变化时间,mtime:修改时间)。这里的变化指的是“元数据”,比如权限、用户名什么的。

#访问时间超过七天

find -atime +7

#七天前被访问过的文件

find -atime 7

  

最近七天访问过的文件

find -atime -7

  

基于权限

find -perm

基于大小,支持单位cwbkMG

find -size

 -size n[cwbkMG]

xargs


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

#多行 换成单行

[root@beijing test]# cat xargs.txt

1.txt

2.txt

3.txt

4.txt

 [root@beijing test]# cat xargs.txt |xargs

1.txt 2.txt 3.txt 4.txt

  

#单行 换成多行

[root@beijing test]# cat xargs1.txt

1       2      3       4       5 6 6 8 9 10

[root@beijing test]# cat xargs1.txt|xargs

1 2 3 4 5 6 6 8 9 10

[root@beijing test]# cat xargs1.txt|xargs -n 2

1 2

3 4

5 6

6 8

9 10

#指定分界符【其中1,2,3,4之间就是用tab键分割的)

[root@beijing test]# cat xargs1.txt|xargs -n 2 -d "\t"

1 2

3 4

5 6 6 8 9 10

  

#测试shell, 仅仅打印参数

[root@beijing test]# cat sayparam.sh

#!/bin/bash

  

echo "$*"#;

  

#模拟参数文件

[root@beijing test]# cat argums.txt

param1

param2

param3

  

[root@beijing test]# cat argums.txt|xargs -n 2  sh sayparam.sh

param1 param2#

param3#

[root@beijing test]# cat argums.txt|xargs -n 1  sh sayparam.sh

param1#

param2#

param3#

[root@beijing test]# cat argums.txt|xargs   sh sayparam.sh

param1 param2 param3#

排序


1

2

3

4

5

6

7

8

9

10

#-k 排序键,从1开始

#-r:反序,就是从大到小

[root@beijing test]# cat argums.txt| sort -r -k 1

param3

param2

param1

[root@beijing test]# cat argums.txt| sort  -k 1

param1

param2

param3

分割文件


1

2

split

可指定生成文件前缀,序号是按数字排列,还是字母排列,分割大小。

案例 批量修改某文件夹文件名称


1

2

3

4

5

6

7

8

9

10

11

#!/bin/bash

for file in *.txt; do

         filename=${file%\.*}  #文件名,非贪婪,从右到左匹配

         extention=${file##*.}#获取后缀名,贪婪从左到右匹配

              

         result=$filename\_back.$extention;

         mv$file $result 2>/dev/null;

         if[[ $? -eq 0 ]]; then

                   echo"rename $file success"

         fi

done

本文出自 “简单” 博客,请务必保留此出处http://dba10g.blog.51cto.com/764602/1607658

时间: 2024-07-30 18:26:20

第二节:思维导图学习Shell脚本编程之命令之美的相关文章

跟着9张思维导图学习Javascript

学习的道路就是要不断的总结归纳,好记性不如烂笔头,so,下面将 po 出我收集的 9 张 javascript 相关的思维导图(非原创). 思维导图小tips: 思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类

[网摘学习]Shell脚本编程学习入门:Shell编程基础

51cto的这篇文章不错,收藏一下:http://os.51cto.com/art/201109/294521.htm(版权归原作者所有) Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #!/bin/sh ... 注意:最好使用"!/bin/bash"而不是"!/bin/sh",如果使用tc shell改为tcsh,其

★思维导图的30个问答

Ⅰ.思维导图学习的30个问答! 搜狐新闻11-137:59 思维导图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类大脑的无限潜能.思维导图因此具有人类思维的强大功能. ①是整理电脑上储存的资料,包括文件夹,各种类型的文件等,为

★思维导图的30个问答

Ⅰ.思维导图学习的30个问答! 搜狐新闻11-137:59 思维导图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类大脑的无限潜能.思维导图因此具有人类思维的强大功能. ①是整理电脑上储存的资料,包括文件夹,各种类型的文件等,为

★思维导图的30个问答

Ⅰ.思维导图学习的30个问答! 搜狐新闻11-137:59 思维导图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类大脑的无限潜能.思维导图因此具有人类思维的强大功能. ①是整理电脑上储存的资料,包括文件夹,各种类型的文件等,为

思维导图学 Linux Shell攻略之小试牛刀篇

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dba10g.blog.51cto.com/764602/1607563 曾听一位大神讲过,带着目的去学,知识往往能记得牢,记得稳.借助思维导图这个工具,对一些我感兴趣的知识点进行分类管理.以后方便自己复习. 我会以思维导图+代码段的方式,回滚学习linux shell编程. 转义/色彩 与用户交互的接口 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1

仅9张思维导图帮你轻松学习Javascript 就这么简单_javascript技巧

学习的道路就是要不断的总结归纳,好记性不如烂笔头,so,下面将分享收集的 9 张 javascript 相关的思维导图(非原创). 思维导图小tips: 思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类大脑的无

学习JavaScript编程语言的8张思维导图分享_javascript技巧

学习的道路就是要不断的总结归纳,好记性不如烂笔头,so,下面将po出8张javascript相关的思维导图. 思维导图小tips:思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像.颜色等建立记忆链接,思维导图充分运用左右脑的机能,利用记忆.阅读.思维的规律,协助人们在科学与艺术.逻辑与想象之间平衡发展,从而开启人类大脑的无限潜能.思维导图因此具有

JS表单学习笔记(思维导图)

导图   本文转自博客园xingoo的博客,原文链接:JS表单学习笔记(思维导图),如需转载请自行联系原博主.