Linux 面试知识-------基础操作和常用命令

Linux 基础操作和常用命令

  1. Ctrl+Alt+t 快捷键或者双击桌面的“Terminal”调出伪终端(命令行窗口)。
  2. 在终端窗口,按Ctrl+C 强行停止当前正在执行的命令或程序。
  3. 关机命令:在终端窗口,输入命令:poweroff
  4. su - [用户名] 命令,用于切换用户。su 切换到root用户。exit返回。
  5. passwd命令,改用户密码。
  6. grep命令,用来在文件中查找字符串。
  7. chmod命令修改文件权限,使用 "+" 设置权限,使用 "-" 用于取消
  8. chown命令,修改文件所有者
  9. chgrp命令, 修改文件所属用户组
  10. cp命令,拷贝文件 
  11. echo命令,显示字符串
  12. find命令,查找文件
  13. ls –al命令,列出当前目录的所有文件信息,包含隐藏文件
  14. ps命令查看进程(瞬间)。  ps -ef    ps -ef|grep 相应的进程名称
  15. kill命令,发送信号。 kill -signal PID    kill -9 PID (进程号) 杀死一个进程
  16. top命令,动态显示进程,也会提供cpu 信息和内存信息,可持续的监视进程的信息。
  17. man命令,查看命令帮助信息。
  18. df 命令查看文件系统的磁盘状态。   du命令统计目录(或文件)占磁盘大小
  19. cd命令,改变当前路径。“.”表示当前目录,“..”表示上一层目录  
  20. pwd命令,显示当前路径。
  21. touch命令,修改文件的时间戳,或创建文件。
  22. mkdir命令,创建目录。
  23. rm命令,删除文件                       rmdir命令 ,删除目录。
  24. cp命令 ,复制文件                          mv命令,移动文件
  25. cat命令,显示文本内容                       alias命令,给命令起别名
  26. zip/unzip命令,将目录或文件压缩/解压成zip格式。
  27. tar命令,将多个文件打包,加指定参数可以进行解压或压缩。
  28. ifconfig命令,查看和配置网络接口的地址和参数,如ip地址
  29. netstart命令,显示网络连接、路由表和网络接口信息
  30. ping命令,查看网络上的主机是否在工作          
  31. mount命令,挂载文件系统
  32. head命令,显示文件前几行内容;        tail命令,显示文件最后几行
  33. gcc命令,用于把C语言的源程序文件,编译成可执行程序
  34. time命令,用于测算一个命令(即程序)的执行时间
  35. vim命令,用于文本编辑,文件存在就打开,不存在就新建一个文件
  • vim + 文件名 进入vim
  • i:插入模式,在该模式输入文字信息。
  • Esc+:w -------- 保存当前文件
  • Esc+:q -------- 退出当前正在编辑的文件(会提示是否保存)
  • Esc+:q! -------- 强制退出当前文件,不保存修改
  • Esc+:wq -------- 保存当前文件并退出
  • Esc+:w filename -------- 存在名为filename的文件里
  • Esc+:set nu -------- 显示行号。(:set nonu取消显示行号)

Linux C语言开发常用编辑器vi,编译器GCC,调试器GDB,工程管理器make和集成开发环境eclipse

vim hello.c  新建一个c文件

gcc hello.c  会在当前路径下生成a.out,运行:  ./a.out

gcc hello.c -o hello    hello是输出的文件名   运行:  ./hello

gcc  –Wall hello.c -o hello   输出gcc所有有用的报警信息。

gdb调试先gcc编译生成可执行文件才能用gdb进行调试

gcc –g test.c –o test   一定加上-g编译出的可执行代码中才包含调试信息。

gdb test  开始调试test

“l”  查看文件内容          “b+对应行号” 设置断点

“info b” 查看断点情况    输入“bt(backrace)”可以查到调用函数(堆栈)的情况

“r(run)” 运行代码             “P+变量名”  查看变量值

“n”或“s” 单步运行  若有函数调用,s会进入该函数继续单步运行,n不进入该函数

“c”  恢复程序运行     “help”查找gdb命令    “q”退出gdb

  1. 程序由多个源文件组成,源文件越多,gcc的命令行越长,用gcc编译程序也很麻烦。
  2. 调试程序一般只会修改一部分文件,而用gcc编译会把那些没修改的文件一起编译,影响了编译的效率。

Make是工程管理器,是一种可以提高编译效率的可以实现自动编译的工程管理器。

Make实现自动编译主要体现在以下两点:

  1. 按照Makefile的编译规则
  2. 通过检查时间戳检查文件是否被修改,没修改则不会被编译

Makefile文件是脚本文件,需要使用脚本语言。脚本一般用来实现批处理,脚本语言一般做测试用。  Makefile三元素:目标文件,依赖文件,运行的命令。

一般用autotools制作makefile

Linux标准IO和文件IO的区别

 

文件描述符

  1. 每个打开的文件都对应一个文件描述符
  2. 文件描述符是一个非负整数。 Linux为程序中每个打开的文件分配一个文件描述符
  3. 文件描述符从0开始分配, 依次递增。
  4. 文件IO操作通过文件描述符来完成
  5. 当程序运行的时候,系统会默认打开3个流:标准输入、标准输出、标准错误,所对应的件描述符分别是0、1、2

                                                     Linux根目录下包含的目录

Linux下的7种文件类型

  1. 普通文件类型 -
    Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-] ,这些文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... cp工具等。这类文件的删除方式是用rm 命令。
  2. 目录文件 d
    就是目录, 能用 # cd 命令进入的。第一个属性为 [d],例如 [drwxrwxrwx] ,创建目录的命令可以用 mkdir 命令,或cp命令,cp可以把一个目录复制为另一个目录。删除用rm rmdir命令。
  3. 块设备文件(b
    块设备文件 就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。第一个属性为 [b] 
  4. 字符设备(c 
    字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。第一个属性为 [c] 
  5. 套接字文件 s
    这类文件通常用在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。第一个属性为 [s],最常在 /var/run目录中看到这种文件类型 
  6. 管道文件 p
    FIFO也是一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误。FIFOfirst-in-first-out(先进先出)的缩写。第一个属性为 [p] 
  7. 符号链接(l
    当我们查看文件属性时,会看到有类似 lrwxrwxrwx,注意第一个字符是l,这类文件是链接文件。是通过ln -s 源文件名 新文件名 。上面是一个例子,表示setup.loginstall.log的软链接文件。怎么理解呢?这和Windows操作系统中的快捷方式有点相似。
发布了21 篇原创文章 · 获赞 16 · 访问量 8338

猜你喜欢

转载自blog.csdn.net/rentan0930/article/details/102897562