一、问题

1.1

统计/var/log/下所有文件个数

1.2

查找出/var/log目录下面修改时间是7天以前,大小在50k到2M之间,并以.log结尾的文件把这些文件复制到/data目录中

1.3

设置一条Iptables规则,允许192.168.10.0段访问873端口?

二、答案

2.1

find /var/log/ ! -type d | wc -l

ll -R /var/log | egrep "^[sl-][rwx-]{9}"| wc -l

tree /var/log/ | awk 'END{print $3}'

分析:

1、/var/log/下所有文件包括当前目录和子目录以及子目录的子目录下面的文件
2、linux下文件有很多类型,包括 普通文件、链接文件、字符设备文件、块设备文件、socket文件等 ls -l输出第一个字符含义
- 普通文件
d 目录
l 链接文件
c 字符设备文件
b 块设备文件
s socket文件

2.2

find /var/log -mtime +7 -size +50k -size -2M -name "*.log" | xargs -i cp {} /data

说明:

默认xargs不支持,{}这种形式,xargs加上-i就可以支持,-i参数就可以用{}花括号了。
查找出满足要求的文件使用find命令,把查找出来的文件批量执行某个命令有如下几种方式:
# 1.使用xargs,就是上面给出的答案
# 2.使用find的-exec参数
find ... -exec cp {} /tmp \;
# 3.因为是复制,可以使用cp -t参数
cp 苹果 苹果 苹果 筐
cp -t 筐 苹果 苹果 苹果
# 4.cp $(find ...) /data
$()表示先执行这个命令,然后把命令结果放在这个位置上面
ls -l $(which mkdir)

2.3

iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 873 -j ACCEPT

分析:

-A:向规则链中添加条目
-s:指定要匹配的数据包源ip地址;
-p:指定要匹配的数据包协议类型;
--dport: 指定目标端口
-j: 指定动作 动作包括:
ACCEPT:接收数据包。
DROP:丢弃数据包。
REDIRECT:重定向、映射、透明代理。
SNAT:源地址转换。
DNAT:目标地址转换。
MASQUERADE:IP伪装(NAT),用于ADSL。
LOG:日志记录。 规则链名包括:
INPUT链:处理输入数据包。
OUTPUT链:处理输出数据包。
PORWARD链:处理转发数据包。
PREROUTING链:用于目标地址转换(DNAT)。
POSTOUTING链:用于源地址转换(SNAT)。

三、参考:

每日一题20180330-Linux的更多相关文章

  1. 老男孩IT教育-每日一题汇总

    老男孩IT教育-每日一题汇总 第几天 第几周 日期 快速访问链接 第123天 第二十五周 2017年8月25日 出现Swap file….already exists以下错误如何解决? 第122天 2 ...

  2. 【Java每日一题】20170106

    20170105问题解析请点击今日问题下方的"[Java每日一题]20170106"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  3. 【Java每日一题】20170105

    20170104问题解析请点击今日问题下方的"[Java每日一题]20170105"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  4. 【Java每日一题】20170104

    20170103问题解析请点击今日问题下方的"[Java每日一题]20170104"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  5. 【Java每日一题】20170103

    20161230问题解析请点击今日问题下方的"[Java每日一题]20170103"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  6. 【Java每日一题】20161230

    // 20161229问题解析请点击今日问题下方的"[Java每日一题]20161230"查看(问题解析在公众号首发,公众号ID:weknow619)package Dec2016 ...

  7. 【Java每日一题】20161229

    package Dec2016; import java.util.ArrayList; import java.util.List; public class Ques1229 { public s ...

  8. 【Java每日一题】20161228

    package Dec2016; import java.util.ArrayList; import java.util.List; public class Ques1228 { public s ...

  9. 【Java每日一题】20161227

    package Dec2016; public class Ques1227 { public static void main(String[] args){ } { c = 1; } int c ...

随机推荐

  1. 算法 | 串匹配算法之KMP算法及其优化

    主串 s:A B D A B C A B C 子串 t:  A B C A B 问题:在主串 s 中是否存在一段 t 的子串呢? 形如上述问题,就是串匹配类问题.[串匹配--百度百科] 串匹配问题是一 ...

  2. 为什么总有target=_blank?

    源于Browsing Context 的概念,不仅有_blank,还有_parent, _top, _self等. 先留个坑.见示例.

  3. pushbutton 移动端弹出列表选择框

    pushbutton 移动端弹出列表选择框 移动端从下往上推动画效果端弹出列表选择框,适应所有主流移动端机型,支持Node引入,require引入;如有用得不爽可以随时提意见,谢谢. demo地址: ...

  4. Angular2入门系列(五)———— 路由参数设置

    Angular2入门系列(五)---- 路由参数设置路由配置: { path: '', component: CarProFile, children: [ { path: 'add', compon ...

  5. 【Android开发】LogcatView,手机中查看logcat神器

    先上图 集成: 1, allprojects { repositories { ... maven { url 'https://www.jitpack.io' } } } 2, dependenci ...

  6. wx:key报错does not look like a valid key name

    把花括号去掉就行了,  现在改版了,  要注意了     wx:key="index"  

  7. python if else代码优化

    开发过程遇到一个问题,用户的性别在数据库中存储时并不会用中文表示,数据库使用male.female.other代表男性.女性和其他,可接口传给前段时希望用户的性别是中文,这时就需要转换. 下面这段代码 ...

  8. 二. 手写SpringMVC框架

    1.1 新建DispatcherServlet 1.2 在src目录下,新建applicationContext.xml <?xml version="1.0" encodi ...

  9. oracle 11g手工建数据库过程

    创建需求和目的 1.需要把11机器上的oracle库中的表导入到12机器oracle库 2.11机器上的数据库fp在12机器上不存在,需要创建新库,以便导入.3.我们只需导入业务库shp即可,不需要把 ...

  10. vue--vuex 状态管理模式

    前言 vuex作为vue的核心插件,同时在开发中也是必不可少的基础模块,本文来总结一下相关知识点. 正文 1.基于单向数据流问题而产生了Vuex 单向数据流是vue 中父子组件的核心概念,props ...