Linux
1、建立软链接(快捷方式),以及硬链接的命令:
软链接:
ln -s slink source
硬链接:
ln link source
2、查看文件内容有哪些命令可以使用?
- vi 文件名:编辑方式查看,可修改。
- cat 文件名:显示全部文件内容。
- more 文件名:分页显示文件内容。
- less 文件名:与 more 相似,更好的是可以往前翻页。
- tail 文件名:仅查看尾部,可以使用
-n
参数指定行数。
- head 文件名:仅查看头部,可以使用
-n
参数指定行数。
3、终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?
终端 /dev/tty
黑洞文件 /dev/null
4、Linux 下命令有哪几种可使用的通配符?分别代表什么含义?
"?" 可替代单个字符。
"*" 可替代任意多个字符。
方括号 "[charset]" 可替代 charset 集中的任何单个字符,如[a-z],[abABC]。
5、用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)
wc 命令 - l 统计行数 - w 统计字数 - c 统计字节数
wc application.yaml
36 70 798 application.yaml
打印结果表明该文件有 36 行,70 个词,798 字节。
6、Grep 命令有什么用?如何忽略大小写?如何查找不含该串的行?
是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
grep [stringSTRING] filename grep [^string] filename
grep -n 'ERROR' spring.log
14:2021-03-02 10:59:48.383 ERROR 2714 --- [main] ...
298:2021-03-02 10:59:48.389 ERROR 2714 --- [main] ...
445:2021-03-02 10:59:48.575 ERROR 2714 --- [main] ...
605:2021-03-02 11:01:57.654 ERROR 2985 --- [main] ...
889:2021-03-02 11:01:57.660 ERROR 2985 --- [main] ...
1036:2021-03-02 11:01:57.884 ERROR 2985 --- [main] ...
打印结果显示所有复合条件的日志条目,`-n`:显示行号
参数 | 描述 | 举例 |
-e | 从文件内容查找与正则表达式匹配的行 | grep -e "E*" spring.log |
-i | 查找时不区分大小写 | grep -i "ERROR" spring.log |
-c | 查找匹配的行数 | grep -c "ERROR" spring.log |
-v | 从文件内容查找不匹配指定字符串的行 | grep -v "ERROR" spring.log |
-n | 显示行号 | grep -n 'ERROR' spring.log |
7、Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?
- 不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。不可中断,指进程不响应异步信号。
- 暂停状态 / 跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个特殊的状态。"正被跟踪" 指的是进程暂停下来,等待跟踪它的进程对它进行操作。
- 就绪状态:在 run_queue 队列里的状态。
- 运行状态:在 run_queue 队列里的状态。
- 可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如等待 socket 连接、等待信号量),而被挂起。
- zombie 状态(僵尸):父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉。
- 退出状态。
表示符号:
- D:不可中断 Uninterruptible(usually IO)。
- R:正在运行,或在队列中的进程。
- S:处于休眠状态。
- T:停止或被追踪。
- Z:僵尸进程。
- W:进入内存交换(从内核 2.6 开始无效)。
- X:死掉的进程。
8、搜索文件用什么命令? 格式是怎么样的?
命令 | 语法 | 示例 | 描述 |
find | find <指定目录> <指定条件> <指定动作> | find / -name "spring*" | 输出所有以 spring 开头的文件路径 |
whereis | whereis 加参数与文件名 | whereis bash | 查看 bash 指令的位置 |
locate | locate 只加文件名 | locate /etc/sh | 搜索 etc 目录下所有以 sh 开头的文件 |
9、通过什么命令查找执行命令?
which 只能查可执行文件
whereis 只能查二进制文件、说明文档,源文件等
10、du 和 df 的定义,以及区别?
du 显示目录或文件的大小。
df 显示每个 <文件> 所在的文件系统的信息,默认是显示所有文件系统。(文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如 i 节点,磁盘分布图,间接块,超级块等。这些数据对大多数用户级的程序来说是不可见的,通常称为 Meta Data)。
du 命令是用户级的程序,它不考虑 Meta Data,而 df 命令则查看文件系统的磁盘分配图并考虑 Meta Data。
df 命令获得真正的文件系统数据,而 du 命令只查看文件系统的部分情况。
11、你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?
使用 linux 命令 "disown -r" 可以将所有正在运行的进程移除。
12、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?
使用命令 "repquota" 能够显示出一个文件系统的配额信息。
只有 root 用户才能够查看其它用户的配额。