Linux 第八天: 练习和作业

Linux 第八天: (08月09日) 练习和作业

 

 

 

1删除/etc/grub2.cfg所有以空白开头的行行首空白字符

sed 's#^[[:space:]]\+##' /etc/grub2.cfg
sed -r 's@^[[:space:]]+@@' /etc/grub2.cfg

 

2删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行当行首的#和空白字符

sed    's@^#[[:space:]]\+@@' /etc/fstab

 

3在 /root/install.log每行行首增加#号

sed -r 's@(.*)@#\1@g' /root/install.log
sed -n 's/^/#/p' /root/install.log

 

?在 /root/install.log第1-100行行首增加#号

sed -n '1,100p' /root/install.log |sed 's/^/#/'

 

4在/etc/fstab文件中不以#开头的行当行首增加#号

sed  's@^[^#]@#&@' /etc/fstab

 

5处理/etc/fstab路径,使用sed命令取出目录名和文件名

echo /etc/sysconfig/ |sed -r  's#[^/]+/?$##' 目录名

echo "/etc/fst/sd" | sed   -r 's@(.*/)([^/]+/?)$@\1@'
echo "/etc/fst/sd" | sed   -r 's@(.*/)([^/]+/?)$@\2@'

echo "/etc/fst/sd" | sed   -r 's@(^.*/)(.*)/?$@\1@'
echo "/etc/fst/sd" | sed   -r 's@(^.*/)(.*)/?$@\2@'

 

6利用sed取出ifconfig命令中本机ipv4地址

ifconfig|sed -n 2p |sed -r  's/.*addr:(.*)  Bca.*/\1/'
ifconfig|sed -n 2p |sed -e  's/.*addr://' -e 's/ B.*//'

 

7统计centos安装光盘下package目录所有rpm文件以分隔倒数第二字段的重复次数

ls *.rpm |sed -r 's#.*\.(.*)\.rpm$#\1#'|sort  |uniq -c
ls *.rpm |rev |cut -d. -f2 |rev|sort |uniq -c

 

复制/etc/profile到/tmp/目录, 用查找替换命令删除/tmp/profile文件中的行首空白字符

sed -r 's@^[[:space:]]+@@g' /tmp/pfofile

 

 

复制/etc/rc.d/init.d/functions文件到tmp目录, 用查找替换命令为/tmp/funcitons的每行开头为空白字符的行当行首添加一个#号

%s@^[[:space:]]\+@#&@

 

 
如何设置tab缩进为4个字符?

set tabstop=4 临时设置:
vim /etc/vimr–>添加set tabstop=4  全局设置

vim ~/.vimrc 手动添加 set tabstop=4 当前用户

 

 

复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log

cp /etc/rc.d/init.d/functions /tmp
%s@/etc/sysconfig/init@/var/log@g
sed 's@/etc/sysconfig/init@/var/log@g' /tmp/functions

 

删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号

:%s@^#\([[:space:]]\+\)@\1@g
set -r 's@^#([[:space:]]+)@\1@' /tmp/functions

 

 

 

 

 

 

原创文章,作者:dengjian,如若转载,请注明出处:http://www.178linux.com/32938

(0)
dengjiandengjian
上一篇 2016-08-11 09:37
下一篇 2016-08-11 09:37

相关推荐

  • 系统基础之Btrfs文件系统详解

    btrfs文件系统:技术预览版(centos7) 描述: Btrfs(B-tree,Butter FS,Better fs),GPL授权,Orale,2007 写实复制特性(Cow)     cp –reflink (只能在btrfs文件系统中使用) 想取代ext系统系统, 支…

    Linux干货 2016-09-21
  • Linux文件三剑客sed命令用法详解

    sed是一种流编辑器,它是文本处理中非常强大的工具,能够完美的配合正则表达式使用,用法简单实用,非常灵活。        工作原理:sed命令处理文本时,把当前处理的行存储在一个临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。 在…

    2017-06-24
  • date命令总结

    在linux中man手册页,对date -d 参数的的说明比较模糊,一下的举例,进一步说明: #-d –date=STRING display time described by STRING not 'now' 命令: date -d nex-day +%Y%m%d    //明天日期 d…

    Linux干货 2016-08-05
  • Basic认证

    basic认证: (1) 定义安全域 [root@bluee htdocs]# mkdir admin [root@bluee htdocs]# vim admin/index.html 刷新浏览器,可以看到admin/index.html文件内容“Page FOR Adminstration” 编辑配置文件: 找个位置增加一个Directoty: <…

    Linux干货 2016-08-05
  • 程序包管理rpm&yum&编译安装

    centos6.6程序包管理 二进制应用程序的组成部分: 二进制文件,库文件,配置文件和帮助文件 程序包管理器:rpm rpm包管理器的前端工具:yum 程序包之间存在依赖关系 rpm的命名方式: name_VERSION_release.arch.rpm     VERSION: major.minor.r…

    Linux干货 2016-07-07
  • bash编程函数select语句的使用

    £select             select循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示PS3提示符,等待用户的输入,用户输入菜单列表中的某个数字,执行相应的命令,用户输入被保存在变量REPLY中。 select是个…

    Linux干货 2016-08-24