• Linux文件内容显示练习


    1.新建2个文件b1.txt  b2.txt  ,使用vim打开b1.txt 输入“Hello  World”字符串,将b1.txt硬链接到b2.txt      查看2个文件的硬连接数

    [root@server ~]# vim b1.txt

    [root@server ~]# ln b1.txt b2.txt  #建立硬链接

    [root@server ~]# stat b2.txt

    [root@server ~]# stat b1.txt

    [root@server ~]# cat b2.txt

    2.在/目录下新建spiral.c文件,使用vim编辑器在其中编写如下程序后保存退出

    (1)程序:

    1. #include
    2. int main(void)
    3. {
    4. int a[100][100], i, j, k = 1, n;
    5. printf("请输入方阵行数:");
    6. scanf("%d", &n);
    7. for (i=0; i2; i++)
    8. {
    9. for (j=i; j-1-i; j++)
    10. a[i][j] = k++;
    11. for (j=i; j-1-i; j++)
    12. a[j][n-i-1] = k++;
    13. for (j=n-i-1; j>i; j--)
    14. a[n-i-1][j] = k++;
    15. for (j=n-i-1; j>i; j--)
    16. a[j][i] = k++;
    17. }
    18. if (n % 2 == 1)
    19. a[n/2][n/2] = n * n;
    20. printf("\n\n%d行方阵图形效果为:\n\n", n);
    21. for (i=0; i
    22. {
    23. for (j=0; j
    24. printf("%d\t", a[i][j]);
    25. printf("\n\n");
    26. }
    27. return 0;
    28. }

    [root@server ~]# vim /spiral.c

    (2)使用gcc编译:  gcc  mod.c

    [root@server ~]# gcc /spiral.c

    (3)查看结果:     ./a.out

    3.完成下列操作

    (1)在 /tmp 这个目录下建立一个名为 vimtest 的目录

    [root@server ~]# cd /tmp
    [root@server tmp]# mkdir vimtest
    [root@server tmp]# ls -c

    (2)将 ~/anaconda-ks.cfg 拷贝到 vimtest目录底下(cp  源文件   目标文件)

    [root@server tmp]# cp ~/anaconda-ks.cfg vimtest/

    [root@server tmp]# ls vimtest/

    (3)使用 vim 打开 anaconda-ks.cfg 文件

    [root@server ~]# vim anaconda-ks.cfg 

    (4)显示行号

    :set nu

    (5)移动到第 26 行,向右移动12 个字符,回答看到的单词

    :26  单词为enable

    (6)移动到第一行,向下搜寻一下“xfs”字符串,查看对应行号

    gg定位到第一行第一个字母 ,:/xfs 查找“xfs”字符串,对应的行号为34和37

    (7)复制 15 到 29 行这15行的内容,并且粘贴贴到最后一行之后

    15-29行一共为14行,:15定位到15行,15yy复制内容,

    GG定位到最后一行之后,p粘贴

    (8)删除 11 到 30 行之间的 20 行;

    :11定位到11行

    20dd删除

    (9)撤销上一步操作

    u

    (10)关闭显示行号

    :set nonu

    (11)将该文件另存为 /etc/new.cfg 的新文件

    :w /etc/new.cfg

    [root@server ~]# more /etc/new.cfg

    4.grep命令:

    (1)在/etc/passwd中搜索bin所在行信息并显示行号

    [root@server ~]# grep -n "bin" /etc/passwd

    (2)在/etc/passwd中搜索所用不能登录的用户信息并显示行号

    [root@server ~]# grep -n "sbin" /etc/passwd

    (3)在/etc/passwd中搜索ftp所在行及上6行信息

    [root@server ~]# grep -B6 "ftp" /etc/passwd

    (4)在/etc/passwd中搜索sshd 所在行的上下各3行信息

    [root@server ~]# grep -C3 "sshd" /etc/passwd

    (5)在/etc/passwd中搜索root行并统计行数

    [root@server ~]# grep -c "root" /etc/passwd

    (6)在/etc/passwd中搜索不包含[4-7]数字的行

    [root@server ~]# grep -nv [4-7] /etc/passwd

    (7)在/etc/passwd中搜索以数字结尾的信息并显示行号

    [root@server ~]# grep -n [0-9]$ /etc/passwd

    该目录没有以数字结尾的行

    (8)在/etc/passwd中过滤掉所有的空行

    [root@server ~]# cat /etc/passwd | grep -nv "^$"

    5.使用cat命令查看网卡的配置文件,之后将其输入到nic1.txt中,并反序显示

    [root@server ~]# cat /etc/NetworkManager/system-connections/ens160.nmconnection > nic1.txt 

    [root@server ~]# cat nic1.txt | sort -r

    6.在/目录下新建目录s1/s2/s3,在s2中新建t2.txt,输入”Hello”,在s3目录下新建t3.txt,输入“world!”,将t2.txt与t3.txt的内容合并到s1下的t1.txt中。

    [root@server ~]# mkdir -p /s1/s2/s3
    [root@server ~]# echo "Hello" > /s1/s2/t2.txt
    [root@server ~]# echo "world!" > /s1/s2/s3/t3.txt
    [root@server ~]# cat /s1/s2/t2.txt /s1/s2/s3/t3.txt > /s1/t1.txt
    [root@server ~]# cat /s1/t1.txt 
    Hello
    world!

    7.将ls命令的帮助信息输出到lsman.txt,使用more分页查看,且一页显示20行

    [root@server ~]# man ls > lsman.txt
    [root@server ~]# more -20 lsman.txt

    8.使用less命令查看/etc/passwd的内容

    [root@server ~]# less /etc/passwd

    9.使用head命令访问网卡配置文件中的前4行并存储到/root/NICETC.txt中,且显示内容

    [root@server ~]# head -4 /etc/NetworkManager/system-connections/ens160.nmconnection  > /root/NICETC.txt
    [root@server ~]# cat /root/NICETC.txt 
    [connection]
    id=ens160
    uuid=0d4748c1-3807-3fd7-96c4-74d2c8a5dc2a
    type=ethernet

    10.使用stat命令显示/dev/cdrom文件的存储时间信息并转存到cdrometc.txt中

    [root@server ~]# stat /dev/cdrom > cdrometc.txt
    [root@server ~]# cat cdrometc.txt

  • 相关阅读:
    Python手写贝叶斯网络
    嵌入式学习笔记
    Android Material Design之MaterialButtonToggleGroup(九)
    【Web】Ctfshow SSRF刷题记录1
    金融业信贷风控算法2-初等统计理论
    文件上传16.17关
    LeetCode--162. 寻找峰值(C++描述)
    论文阅读:Rethinking Range View Representation for LiDAR Segmentation
    力控软件与2台200Smart之间无线以太网通信
    Linux基础(yum,vim,gcc,gdb)
  • 原文地址:https://blog.csdn.net/weixin_72583321/article/details/133051246