草庐IT

[面试宝典] Linux常见命令及面试题

小曾同学.com 2024-03-22 原文

前言:
😄作者简介:小曾同学.com,小伙伴们也可以叫我小曾,一个致力于测试开发的博主⛽️
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。😊
座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍

文章目录

1. Linux 常用命令

  1. 创建文件夹

    mkdir demo
    mkdir -p demo/demo1/demo2   #创建多级目录
    
  2. 创建文件

    touch demo.txt
    
  3. 打开文件

    open demo
    
  4. 打开文本文件

    open -e demo.txt
    
  5. 删除文件(单个文件)

    rm demo1
    
  6. 删除目录【慎用】

    rm -rf demo1
    
  7. 查看文件中内容:

    1. cat demo.txt 或者 tail demo.txt
    2. 查看文件前10行内容:head -n 10 log.log 
    3. 查看文件最后10行内容: tail -n 10 log.log 
    
  8. 复制1

    cp demo1.txt demo2.txt demo
    
  9. 复制2:

    cp -r demo/demo1.txt  demo/demo2.txt demo1/
    
  10. 剪切或者重命名:

    mv demo1.txt demo/demo2.txt. (将demo1剪切到demo文件中,并改名为demo2.txt)
    
  11. 压缩文件:

    tar -zcvf demo.tar.gz demo (将文件demo压缩为demo.tar.gz)
    - c :建立一个压缩文件的参数指令(create 的意思);
    - z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
    - v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
    - f :在 f 之后要立即接文档名!不要再加参数!
    
  12. 压缩文件:

    zip demo1.zip demo1
    
  13. 解压文件:

    tar -xzvf demo.tar.gz
    
  14. 解压文件

    unzip demo1.zip
    
  15. 查看目录了列表:

    ls  或者 ls -l
    
  16. 编辑

    vi demo.txt 或者 vim demo.txt 或者 open -e demo.txt
    
  17. 查看当前路径:

    pwd
    
  18. 创建用户

    useradd zeng
    
  19. 切换用户

    su zeng(su:switch user)
    
  20. 删除用户

    userdel zeng
    
  21. 创建用户组:

    groupadd jenny
    
  22. 删除用户组

    groupdel jenny
    
  23. 修改权限

    chmod 777 demo.txt
    
  24. 查看进程或查看进程号

    ps -ef | grep 进程名
    ps -ef | grep 进程号
    
  25. 查看端口被哪个进程监听

    lsof -i:8080
    必要时需要输入 sudo 
    sudo lsof -i:8080
    
  26. 杀进程

    kill 进程号 或者 kill -9 进程号(kill -9 表示强制执行)
    
  27. 查看命令的使用

    cp —help
    man cp
    
  28. 过滤文件内容中包含“XXXX”的行

    grep -E “XXXX” demo.txt
    cat demo.txt | grep “XXXX”
    
  29. linux中查看ip地址

    ifconfig
    
  30. 查看系统硬盘空间命令

    df
    

2. Linux常见问题

  1. 系统环境变量的配置文件,路径为: /etc/profile

  2. 在Linux系统中,每个用户都有一个环境变量设置,在 /etc/bashrc文件中。

  3. 在TCP/IP中,DHCP协议是用来进行IP自分配的。

    DHCP是动态主机配置协议,使用UDP协议工作,主要有两个作用:

     1. 给内部网络或网络服务供应商自动分配IP地址
     2. 给用户或者内部网络管理员作为对所有计算机作中央管理的手段
    
  4. 命令 netstat -a 停了很长时间没有响应,这可能是DNS的问题。

  5. Linux中,提供TCP/ip包过滤功能的软件是iptables

  6. 通过Makefile来安装已编译过的代码的命令是 make install

  7. apache的主配置文件是/etc/httpd/conf/httpd.conf

  8. 对于Apache服务器,提供的子进程的缺省的用户是 apached

3. 查看网络故障常用的命令

  1. ping 命令

    ping 主要用于确定网络的连通性,ping使用的是 ICMP 协议,是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。ping 使用方法如下,

     ping ip地址
     ping 域名
     ping 主机名
    

  2. netstat 命令

    netstat 主要是用来了解网络当前的状态,netstat 是在内核中访问网络及相关信息的程序,它能提供 TCP 连接,TCP 和 UDP 监听,进程内存管理的相关报告,一般用于检验本机各端口的网络连接情况。例如,

    netstat -a 显示所有的有效连接信息列表。
    

  3. telnet 命令
    telnet 是一个功能强大的远程登录命令。一般情况下电脑不会开启这个功能,防止黑客攻击。telnet的使用如下,

    telnet ip地址 端口
    
  4. ifconfig命令

    主要用于显示TCP/IP配置的设置值,如果配置是由人工配置,则该配置可用于检验人工设置的是否正确。

祝大家1024程序员节快乐哦!

有关[面试宝典] Linux常见命令及面试题的更多相关文章

  1. ruby - 在 Ruby 中编写命令行实用程序 - 2

    我想用ruby​​编写一个小的命令行实用程序并将其作为gem分发。我知道安装后,Guard、Sass和Thor等某些gem可以从命令行自行运行。为了让gem像二进制文件一样可用,我需要在我的gemspec中指定什么。 最佳答案 Gem::Specification.newdo|s|...s.executable='name_of_executable'...endhttp://docs.rubygems.org/read/chapter/20 关于ruby-在Ruby中编写命令行实用程序

  2. 【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢 - 2

    HashMap中为什么引入红黑树,而不是AVL树呢1.概述开始学习这个知识点之前我们需要知道,在JDK1.8以及之前,针对HashMap有什么不同。JDK1.7的时候,HashMap的底层实现是数组+链表JDK1.8的时候,HashMap的底层实现是数组+链表+红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???2.链表上述的截图其实就是链表的结构,我们来看下链表的增删改查的时间复杂度增:因为链表不是线性结构,所以每次添加的时候,只需要移动一个节点,所以可以理解为复杂度是N(1)删:算法时间复杂度跟增保持一致查:既然是非线性结构,所以查询某一个节点的时候

  3. ruby-on-rails - rbenv:从 RVM 移动到 rbenv 后,在 Jenkins 执行 shell 中找不到命令 - 2

    我从Ubuntu服务器上的RVM转移到rbenv。当我使用RVM时,使用bundle没有问题。转移到rbenv后,我在Jenkins的执行shell中收到“找不到命令”错误。我内爆并删除了RVM,并从~/.bashrc'中删除了所有与RVM相关的行。使用后我仍然收到此错误:rvmimploderm~/.rvm-rfrm~/.rvmrcgeminstallbundlerecho'exportPATH="$HOME/.rbenv/bin:$PATH"'>>~/.bashrcecho'eval"$(rbenvinit-)"'>>~/.bashrc.~/.bashrcrbenvversions

  4. git使用常见问题(提交代码,合并冲突) - 2

    文章目录git常用命令(简介,详细参数往下看)Git提交代码步骤gitpullgitstatusgitaddgitcommitgitpushgit代码冲突合并问题方法一:放弃本地代码方法二:合并代码常用命令以及详细参数gitadd将文件添加到仓库:gitdiff比较文件异同gitlog查看历史记录gitreset代码回滚版本库相关操作远程仓库相关操作分支相关操作创建分支查看分支:gitbranch合并分支:gitmerge删除分支:gitbranch-ddev查看分支合并图:gitlog–graph–pretty=oneline–abbrev-commit撤消某次提交git用户名密码相关配置g

  5. Hive SQL 五大经典面试题 - 2

    目录第1题连续问题分析:解法:第2题分组问题分析:解法:第3题间隔连续问题分析:解法:第4题打折日期交叉问题分析:解法:第5题同时在线问题分析:解法:第1题连续问题如下数据为蚂蚁森林中用户领取的减少碳排放量iddtlowcarbon10012021-12-1212310022021-12-124510012021-12-134310012021-12-134510012021-12-132310022021-12-144510012021-12-1423010022021-12-154510012021-12-1523.......找出连续3天及以上减少碳排放量在100以上的用户分析:遇到这类

  6. ruby - 从 Ruby : capturing the output while displaying the output? 运行 shell 命令 - 2

    我有一个问题。我想从另一个ruby​​脚本运行一个ruby​​脚本并捕获它的输出信息,同时让它也输出到屏幕。亚军#!/usr/bin/envrubyprint"Enteryourpassword:"password=gets.chompputs"Hereisyourpassword:#{password}"我运行的脚本文件:开始.rboutput=`runner`putsoutput.match(/Hereisyour(password:.*)/).captures[0].to_s正如您在此处看到的那样,存在问题。在start.rb的第一行,屏幕是空的。我在运行程序中看不到“输入您的密

  7. ruby - 是否有将图像文件转换为 ASCII 艺术的命令行程序或库? - 2

    有这样的事吗?我想在Ruby程序中使用它。 最佳答案 试试这个http://csl.sublevel3.org/jp2a/此外,Imagemagick可能还有一些东西 关于ruby-是否有将图像文件转换为ASCII艺术的命令行程序或库?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6510445/

  8. ruby - 将对象设置为 nil 是否很常见? - 2

    我正在构建一个应用程序,想知道是否将未使用的对象设置为nil是生产级编码中的常见做法。我知道这只是垃圾收集器的提示,并不总是处理对象。 最佳答案 根据这个thread如果您使用完一个成员对象,将其设置为nil将引发被引用对象被垃圾回收。如果它是局部变量,方法exit将做同样的事情。也就是说,如果您要求将成员显式设置为nil,我会质疑您的设计。 关于ruby-将对象设置为nil是否很常见?,我们在StackOverflow上找到一个类似的问题: https://

  9. ruby - 在 Ruby 的 if 语句中检查 bash 命令 - 2

    如何在Ruby的if语句中检查bash命令的返回值(true/false)。我想要这样的东西,if("/usr/bin/fswscell>/dev/null2>&1")has_afs="true"elsehas_afs="false"end它会提示以下错误含义,它总是返回true。(irb):5:warning:stringliteralincondition正确的语法是什么?更新:/usr/bin/fswscell寻找afs安装和运行状态。它会抛出这样的字符串,Thisworkstationbelongstocell如果afs没有运行,命令以状态1退出 最

  10. ruby - 可以正常中断的来自 Rake 的长时间运行的 shell 命令? - 2

    在几个项目中,我希望有一个类似rakeserver的rake任务,它将通过任何需要的方式开始为该应用程序提供服务。这是一个示例:task:serverdo%x{bundleexecrackup-p1234}end这行得通,但是当我准备停止它时,按Ctrl+c并没有正常关闭;它中断了Rake任务本身,它说rakeaborted!并给出堆栈跟踪。在某些情况下,我必须执行Ctrl+c两次。我可能可以用Signal.trap写一些东西来更优雅地中断它。有没有更简单的方法? 最佳答案 trap('SIGINT'){puts"Yourmessa

随机推荐