请问如何才能学好linux啊?面试怎么学才能成功了几回,问我linux命令我都记不住啊,我看鸟哥的linux私房菜都快3遍了

用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。

ls -l (也可以直接 ll ) :列出长数据串,包含文件的属性与权限数据等

ls -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)

语法:grep 参数 查找条件 文件名(注:是文件名,目录名下查找不行)

i:不区分大小写(只适用于字母字符。)

l:查询多文件时只输出包含匹配字符的 文件名。

n:显示匹配行内容及行号。

ls -l|grep -i test:把ls -l的输出中包含字母test(不区分大小写)的内容输出 (如果查询的是目录可以使用正则表达式,但是文件不行)

在某一文件中查找日志(比方方法login):可以vi打开日志文件,然后“/login”,enter,按 n 键向下继续搜索;

:创建权限为777的目录

复制文件,还可以把多个文件一次性地复制到一个目录下

-f :就是force的意思,忽略不存在的文件,不会出现警告消息  -i :互动模式,在删除前会询问用户是否操作  -r :递归删除,最常用于目录删除,它是一个非常危险的参数  rm -i file : 删除文件file,在删除之前会询问是否进行该操作  

列出系统中当前运行的进程

a 显示所有用户的所有进程(包括其它用户)

-e 显示所有进程,环境变量f 用树形格式来显示进程;

对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。 
语法:tar [主选项+辅选项] 文件或者目录 
使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。 
   主选项:c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。相当于打包。 
x 从档案文件中释放文件。相当于拆包。 
t 列出档案文件的内容,查看已经备份了哪些文件。 
**在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。 
-v :压缩的过程中显示文件!这个常用 
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加其他参数! 
-p :使用原文件的原来属性(属性不会依据使用者而变) 

注:文件名并不定要以后缀tar.bz2结尾,这里主要是为了说明使用的压缩程序为bzip2

我们多数用三位八进制数字的形式来表示权限,第一位指定属主的权限,第二位指定组权限,第三位指定其他用户的权限,每位通过4(读)、2(写)、1(执行)三种数值的和来确定权限。如6(4+2)代表有读写权,7(4+2+1)有读、写和执行的权限

面试官常问的十个linux问题

1. 如何暂停一个正在运行的进程,把其放在后台(不运行)?

答案:为了停止正在运行的进程,让其在后台运行,我们可以使用组合键 Ctrl+Z。

2. 什么是安装Linux所需的最小分区数量,以及如何查看系统启动信息?

答案:单独一个/root分区足以执行所有的系统任务,但是强烈建议安装Linux时,需要至少三个分区:/root,/boot,/swap。一个IDE硬盘驱动器支持高达63个分区,SCSI硬盘驱动器支持超过15个分区。

为了检查启动信息,我们可以使用cat或者dmesg命令,如下所示:

3. 在你的Linux机器上跟踪系统事件的守护进程名是什么?

答案:’syslogd’,它负责跟踪系统信息,并将跟踪日志存储在特定的日志文件里。

4. 在/root分区运行’fsck’命令的最低要求是什么?

答案:/root分区必须挂载为只读模式,而不是读写模式

5. 如何分层复制/home目录到另一个目录?

答案:Linux的’cpio’命令起到了效果。’cpio’可以分层地复制文件和目录层次结构到另一个位置。

6. 在Linux中,怎样实现日志文件的自动替换?

答案:’logrotate’提供日志自动替换功能。

7. 怎样知道Linux中是谁在安排工作?

答案:使用’at’命令加上’-l’选项,就可以查出。

8. 如何在不解压tar包的前提下,查看包里的内容?

答案:使用’tar -tvf’。选项‘t’(显示内容),‘v’(详细报告tar处理的文件信息),‘f’(使用档案文件或者设备)

9. 什么是页面错误,它是怎么发生的?

答案:当一个程序请求内存中不存在的数据时,就会产生页面错误,导致的结果就是程序停止。

10. 什么是在程序中返回代码?

答案:返回代码是shell的特性。返回代码显示了程序的状态,一个成功的程序执行后返回‘0’,&&可以用来决定那个应用程序先执行。

1. 绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?

当前目录和上层目录: ./ ../

2. 怎么查看当前进程?怎么执行退出?怎么查看当前路径?

查看当前路径: pwd

3. 怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 id?查看指定帮助用

退出当前命令: ctrl+c 彻底退出

执行睡眠 : ctrl+z 挂起当前进程 fg 恢复后台

查看当前用户 id: ”id“:查看显示目前登陆账户的 uid 和 gid 及所属分

4. Ls 命令执行什么功能? 可以带哪些参数,有什么区别?

ls 执行的功能: 列出指定目录中的目录,以及文件

哪些参数以及区别: a 所有文件 l 详细信息,包括大小字节数,可读可写

5. 建立软链接(快捷方式),以及硬链接的命令。

6. 目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?

创建文件:典型的如 touch,vi 也可以创建文件,其实只要向一个不存在的文件输出,都会创建文件

复制文件: cp 7. 文件权限修改用什么命令?格式是怎么样的?


文件权限修改: chmod

权限,给 file 的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限

8. 查看文件内容有哪些命令可以使用?

vi 文件名 #编辑方式查看,可修改

cat 文件名 #显示全部文件内容

more 文件名 #分页显示文件内容

less 文件名 #与 more 相似,更好的是可以往前翻页

tail 文件名 #仅查看尾部,还可以指定行数

head 文件名 #仅查看头部,还可以指定行数

9.随意写文件命令?怎么向屏幕输出带空格的字符串,比如”hello world”? 写文件命令:vi

10.终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?

11. 移动文件用哪个命令?改名用哪个命令?

12. 复制文件用哪个命令?如果需要连同文件夹一块复制呢?如果需要有提示功能呢?

13. 删除文件用哪个命令?如果需要连目录及目录下文件一块删除呢?删除空文件夹用什么命令?

14. Linux 下命令有哪几种可使用的通配符?分别代表什么含义?

“?”可替代单个字符。 ·“*”可替代任意多个字符。 ·方括号“[charset]”可替代 charset 集中的任何单个字符,如[a-z],[abABC] 15. 用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)

16.Grep 命令有什么用? 如何忽略大小写? 如何查找不含该串的行?

是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。

17.Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

(1)、不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。不可中断, 指进程不响应异步信号。

(2)、暂停状态/跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个

“正在被跟踪”指的是进程暂停下来,等待跟踪它的进程对它进行操作。(3)、就绪状态:在 run_queue 队列里的状态(4)、运行状态:在 run_queue 队列里的状态

(5)、可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如等待 socket 连接、等待信号量),而被挂起


(6)、zombie 状态(僵尸):父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉

R正在运行,或在队列中的进程

W 进入内存交换(从内核 2.6 开始无效)

18.怎么使一个命令在后台运行?

19.利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?

20.哪个命令专门用来查看后台任务? job -l


21.把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?

23.怎么查看系统支持的所有信号? kill -l


25.查看当前谁在使用该主机用什么命令? 查找自己所在的终端信息用什么命令?

w 用户名称;用户的机器名称或 tty 号;远程主机地址;用户登录系统的时间;空闲时间(作用不大);附加到 tty(终端)的进程所用的时间(JCPU 时间);当前进程所用时间(PCPU时间);用户当前正在使用的命令.


who 用户名、tty 号、时间日期、主机地址

last 命令可用于显示特定用户登录系统的历史记录(last jason):用户名称;tty 设备号;历史登录时间日期;登出时间日期;总工作时间.


查找自己所在终端信息:who am i

26.使用什么命令查看用过的命令列表? history


27.使用什么命令查看磁盘使用空间? 空闲空间呢? df -hl
文件系统 容量 已用 可用 已用% 挂载点

28.使用什么命令查看网络是否连通?

30.查看各类环境变量用什么命令?查看所有 env

31.通过什么命令指定命令提示符? \u 显示当前用户账号 \h 显示当前主机名


\W 只显示当前路径最后一个目录 \w 显示当前绝对路径(当前用户目录会以 ~代替) $PWD 显示当前全路径 \$ 显示命令行’$'或者’#'符号 \# :下达的第几个命令

\t :显示时间为 24 小时格式,如:HH:MM:SS \T :显示时间为 12 小时格式 \A :显示时间为 24 小时格式:HH:MM \v :BASH 的版本信息

补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。

-B<目录> 只在设置的目录下查找二进制文件。 -f 不显示文件名前的路径名称。

-M<目录> 只在设置的目录下查找说明文件。 -s 只查找原始代码文件。


-S<目录> 只在设置的目录下查找原始代码文件。 -u 查找不包含指定类型的文件。
which 指令会在 PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

-p 与-n 参数相同,但此处的包括了文件的路径。 -w 指定输出时栏位的宽度。

33.通过什么命令查找执行命令?

which 只能查可执行文件 whereis 只能查二进制文件、说明文档,源文件等


34. 怎么对命令进行取别名?

35. du 和 df 的定义,以及区别? du 显示目录或文件的大小


df 显示每个<文件>所在的文件系统的信息,默认是显示所有文件系统。

(文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如 i 节点,磁盘分布图,间接块,超级块等。

这些数据对大多数用户级的程序来说是不可见的,通常称为 Meta Data。) du 命令是用户级的程序,它不考虑 Meta Data,而 df 命令则查看文件系统的磁盘分配

df 命令获得真正的文件系统数据,而 du 命令只查看文件系统的部分情况。


从基础开始: 常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linux 的基础之后,应该就可以很轻易的解决掉这方面的问题。而有些朋友们常常一接触Linux 就是希望构架网站,根本没有想到要先了解一下Linux 的基础。这是相当困难的。

Linux命令是必须学习的:虽然Linux桌面应用发展很快,但是命令在Linux中依然有很强的生命力。Linux是一个命令行组成的操作系统,精髓在命令行,无论图形界面发展到什么水平这个原理是不会变的,Linux命令有许多强大的功能:从简单的磁盘操作、文件存取、到进行复杂的多媒体图象和流媒体文件的制作。举一个例子:Linux的常用命令find,察看man文档,初学者一定会觉得太复杂而不原意用,但是你一旦学会就爱不释手.它的功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间. 不同版本的Linux命令数量不一样,这里笔者把它们中比较重要的和使用频率最多的命令,按照它们在系统中的作用分成几个部分介绍给大家,通过这些基础命令的学习我们可以进一步理解Linux系统.

选择一个适合你的Linux发行版本:目前全球有超过1百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,Redhat Linux 和Debian Linux是网络管理员的理想选择。对于英语不是很好的读者红旗Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。

养成在命令行下工作: 一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢,但是熟悉后,您未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。即使是通过一条缓慢的调制解调器线路,它也能操纵几千公里以外地远程系统。

选择一个适合你的Linux社区:随着Linux应用的扩展,出现了不少Linux社区。

勤于实践: 要增加自己Linux 的技能,只有通过实践来实现了。所以,赶快找一部计算机,赶快安装一个 Linux 发行版本,然后进入精彩的Linux世界。相信对于你自己的 Linux 能力必然大有斩获。此外,人脑不像计算机的硬盘一样,除非硬盘坏掉了或者是资料被你抹掉了,否则储存的资料将永远而且立刻的记忆在硬盘中。在人类记忆的曲线中,你必须要不断的重复练习才会将一件事情记得比较熟。同样的,学习 Linux 也一样,如果你无法经常学习的话,学了后面的,前面的忘了。你对Linux命令熟悉后你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。当然你不需搭建所有服务,可以慢慢来。需要说明的是这个Linux网络对于初学者有两三台计算机即可,其中一台计算机最好安装Windows系统。自己多动手,不要非要等着别人帮你解决问题。

学习专业英文:如果你想深入学习Linux,看不懂因为文档实在是太难了。写的最好的,最全面的文档都是英语写的,最先发布的技术信息也都是用英语写的。即便是非英语国家的人发布技术文档,也都首先翻译成英语在国际学术杂志和网络上发表。安装一个新的软件时先看README,再看INSTALL然后看FAQ,最后才动手安装,这样遇到问题就知道为什么。如果说明文档不看,结果出了问题再去论坛来找答案反而浪费时间。

基本的linux的知识是需要具备的,其他还需要掌握的知识有ARM和C语言编程,每一方面知识的掌握熟练程度都最终决定了个人进行嵌入式linux开发的综合能力。

我要回帖

更多关于 面试怎么学才能成功 的文章

 

随机推荐