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

相关推荐

  • Shell脚本编程—函数

    函数:     把一段独立功能的代码当作一个整体,并命名一个名字;命名的代码段,此即为函数     由若干条shell命令组成的语句块,实现代码重用和模式化编程 函数的作用:     在某些场景下,我们可以将独立功能的一段代码定义为一个函数…

    Linux干货 2016-08-24
  • 探究PHP底层

    1、PHP是什么? PHP 指的是我们从外面看到的一套完整的系统。这听起来有点糊涂,但其实并不复杂(PHP4 内部结构图)。从功能上来分:我们可以分为三部分: 1、 解释器部分(Zend 以引擎),负责对输入代码的分析、翻译和执行;2、 功能性部分(PHP功能函数以及扩展),负责具体实现语言的各种功能(比如它的函数等等);3、 接口部分(SAPI),负责同 …

    Linux干货 2015-04-10
  • 【26期】Linux第六周学习小总结

        时光匆匆,一周时光悠然而逝,带给我们的只有知识的充实,和每日强大的自信心,学习的日益深入,慢慢的然我们的思绪和状态带回高中时光,吃饭上课睡觉三点一线的生活,枯燥中透露出稍微的晨曦,让每个明天都充满着期待,那我们的本周的学习中磁盘管理算是占了很大的比重,毕竟关于磁盘的知识很是难理解,那我就把本周的知识回顾温习,同时分享给大家。 &n…

    2017-08-19
  • 第九周博客作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现 #!/bin/bash declare -i sum=0 declare -i sum_nologin=0 for i in $(cut -d: -f7 /etc/passwd);do if…

    Linux干货 2017-06-06
  • 网络知识点

    1. 实现异地搭建局域网的方法1>. 让运行商拉专线,这是相当昂贵的。2>.  VPN (Virtual PrivateNetwork)  虚拟专用网络 2. VPN的隧道协议主要有三种:PPTP、L2TP和IPSec。其中PPTP和L2TP协议工作在OSI模型的第二层,又称为二层隧道协议;IPSec是第三层隧道协议。 2. …

    Linux干货 2016-09-01
  • 基于LNMP架构添加Memcached支持,并验证其缓存结果

    一 Memcached简介 Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。它是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。 Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。它的API兼容大部分流…

    Linux干货 2016-12-12