面试问题

linux面试题

linux文件类型有几种?

  • ```sh
    7种。
    1、普通文件类型。

    纯文本文件(ASCII)
    二进制文件(binary)
    数据格式的文件(data)
    

    2、目录文件类型。
    用于存放文件名以及其相关信息的文件,是内核组织文件系统的基本节点。目录文件可以包含下一级文 件目录或者普通文件,在Linux中,目录文件是一种文件
    3、块设备文件类型。
    就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。
    4、字符设备类型。
    字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。
    5、套接字文件类型。
    这类文件通常用在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。
    6、管道文件类型。
    是一种很特殊的文件,主要用于不同进程的信息传递。当两个进程需要进行数据或者信息传递时,可以 使用通道文件,一个进程将需要传递的数据或者信息写入管道的一端,另一进程从管道的另一端取得所 需要的数据或者信息,通常管道是建立在调整缓存中。
    7、链接文件类型。
    是一种特殊文件,指向一个真实存在的文件链接,类似于Windows下的快捷方式,链接文件的不同,又 可分为硬链接文件和符号链接文件。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22



    # 批量修改文件

    - ```
    rename
    [root@localhost ~]# rename txt txt.org /data/*.txt
    [root@localhost ~]# ls /data/
    a b.txt.org d.txt.org j.txt.org p.txt.org v.txt.org
    A c e.txt.org k.txt.org q.txt.org w.txt.org
    '[a-d].txt.org' C f.txt.org l.txt.org r.txt.org x.txt.org
    a.txt.org c.txt.org g.txt.org m.txt.org s.txt.org y.txt.org
    b d h.txt.org n.txt.org t.txt.org z.txt.org
    B D i.txt.org o.txt.org u.txt.org
    [root@localhost ~]# rename txt.org org /data/*.org
    [root@localhost ~]# ls /data/
    a b C d.org h.org l.org p.org t.org x.org
    A B c.org e.org i.org m.org q.org u.org y.org
    '[a-d].org' b.org d f.org j.org n.org r.org v.org z.org
    a.org c D g.org k.org o.org s.org w.org

    常见面试题

    冯诺依曼体系中计算机有哪些组件?
    Linux 哲学思想(法则,原则)是什么?
    请你谈谈如何成为一名优秀的运维工程师,以及需要具备哪些方面的能力?
    你的日常运维工作是哪些事项?
    你在工作中最大成绩是什么?
    哪件事在你的印象最深刻?
    你前一家公司的计算机规模是多少?
    请描述一下你前一家公司的IT架构

文件权限

  1. 当用户docker对/testdir 目录无执行权限时,意味着无法做哪些操作?
  2. 当用户mongodb对/testdir 目录无读权限时,意味着无法做哪些操作?
  3. 当用户redis 对/testdir 目录无写权限时,该目录下的只读文件file1是否可修改和删除?
  4. 当用户zabbix对/testdir 目录有写和执行权限时,该目录下的只读文件file1是否可修改和删除?
  5. 复制/etc/fstab文件到/var/tmp下,设置文件所有者为tomcat读写权限,所属组为apps组有读写
    权限,其他人无权限
  6. 误删除了用户git的家目录,请重建并恢复该用户家目录及相应的权限属性

怎么样随机生成密码

1
cat /dev/urandom | tr -dc '[:alnum:]'|head -c16

有两个文件,a.txt与b.txt ,合并两个文件,并输出时确保每个数字也唯一

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#a.txt中的每一个数字在本文件唯一
200
100
34556
23
...
#b.txt中的每一个数字在本文件唯一
123
43
200
3321
...
#就是将两个文件合并后重复的行去除,不保留
100
345563
123
43
3321

练习题

习题1

  1. 找出ifconfig “网卡名” 命令结果中本机的IPv4地址
  2. 查出分区空间使用率的最大百分比值
  3. 查出用户UID最大值的用户名、UID及shell类型
  4. 查出/tmp的权限,以数字方式显示
  5. 统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

正则表达式练习

1、显示/proc/meminfo文件中以大小s开头的行(要求:使用两种方法)
2、显示/etc/passwd文件中不以/bin/bash结尾的行
3、显示用户rpc默认的shell程序
4、找出/etc/passwd中的两位或三位数
5、显示CentOS7的/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面有非空白字符的行
6、找出“netstat -tan”命令结果中以LISTEN后跟任意多个空白字符结尾的行
7、显示CentOS7上所有UID小于1000以内的用户名和UID
8、添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户
名和shell同名的行
9、利用df和grep,取出磁盘各分区利用率,并从大到小排序

扩展正则表达式练习

1、显示三个用户root、mage、wang的UID和默认shell
2、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行
3、使用egrep取出/etc/rc.d/init.d/functions中其基名
4、使用egrep取出上面路径的目录名
5、统计last命令中以root登录的每个主机IP地址登录次数
6、利用扩展正则表达式分别表示0-9、10-99、100-199、200-249、250-255
7、显示ifconfig命令结果中所有IPv4地址
8、将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

练习:用 for 实现

1、判断/var/目录下所有文件的类型
2、添加10个用户user1-user10,密码为8位随机字符
3、/etc/rc.d/rc3.d目录下分别有多个以K开头和以S开头的文件;分别读取每个文件,以K开头的输出为
文件加stop,以S开头的输出为文件名加start,如K34filename stop S66filename start
4、编写脚本,提示输入正整数n的值,计算1+2+…+n的总和
5、计算100以内所有能被3整除的整数之和
6、编写脚本,提示请输入网络地址,如192.168.0.0,判断输入的网段中主机在线状态
7、打印九九乘法表
8、在/testdir目录下创建10个html文件,文件名格式为数字N(从1到10)加随机8个字母,如:
1AbCdeFgH.html
9、打印等腰三角形
10、猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子
吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,只
剩下一个桃子了。求第一天共摘了多少?

算出所有人的年龄总和

1
2
3
4
5
6
7
8
9
10
11
[root@centos8 ~]#cat /data/age.txt
xiaoming=20
xiaohong=18
xiaoqiang=22
[root@centos8 ~]#cut -d"=" -f2 /data/age.txt|tr '\n' + | grep -Eo ".*[0-9]"|bc
60
[root@centos8 ~]#grep -Eo "[0-9]+" /data/age.txt | tr '\n' + | grep -Eo ".*[0-
9]"|bc
60
[root@centos8 ~]#grep -oE '[0-9]+' /data/age.txt| paste -s -d+|bc
60

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!