Linux 学习笔记
最重要的命令
man
查看帮助手册,例如man ls
表示查看ls
命令的帮助手册-h
、--h
、-help
、--help
查看命令帮助
常用命令
mkdir
创建一个文件夹;touch
创建一个空文件,touch 的另一个作用是更新文件的时间戳,也就是最后编辑时间,内容保持不变;rm <file>
删除文件,rm -f <file>
强制删除文件;cp <old> <new>
复制文件;mv <old> <new>
移动或重命名文件;cat file
显示文件内容;ls foo
可以用于检查foo
文件或目录是否存在;>
将输出重定向到文件名,>>
将输出附加到文件名;diff <f1> <f2>
对比文件 1 和 2 的差异;wc <file>
统计文件行数、字数和大小,显示的结果中的数字分别表示文件内容的行数、字数和字节大小;head <file>
显示文件的前 10 行内容,tail <file>
显示文件的最后 10 行内容;which bash
显示程序(bash)路径;grep -i <string> <file>
在指定文件中查找字符串,其中-i
表示忽略大小写;ps
显示进程;top
按资源占用从高到低排序显示进程;kill -<level> <pid>
杀掉一个进程;cd ..
回到上一层目录;cd -
回到上一个目录;cd ~
回到主目录(Home 目录),等同于cd
;cd /
回到根目录;scp
命令可以在多台设备上相互拷贝文件;scp -r
命令可以在多台设备上拷贝文件夹find
查找文件,用find可以根据文件名查找,或者根据类型查找,通过不同的参数设置,如find . -name "a.txt"
表示在当前目录找文件名为 a.txt 的路径grep
搜索字符,搜过文件中的字符是非常常用的功能之一,比如写代码时候搜过一个函数都在哪里调用了。或者分析日志时候过滤出有用数据都可以用grep。如bash$ grep test *.txt
表示在当前目录下搜索包含 test 字符的 .txt 文件。
下面放一张网友总结的 Linux 常用命令脑图(原始链接已经找不到了):
组合命令:多个命令之间可以用分号
;
隔开,表示依次执行多个命令。但是更好地使用组合命令是用&&
隔开多个命令,这种方式的好处是等待前一个命令成功后再执行下一个命令。
常用快捷键
Tab
命令补全Ctrl
+C
终止命令执行Ctrl
+U
清除已输入的命令Ctrl
+D
关闭命令行窗口Ctrl
+L
清除屏幕Ctrl
+A
将光标移动到命令行开头Ctrl
+E
将光标移动到命令行结尾Alt
+Enter
终端窗口最大/最小化Ctrl
+Up/Down Arrow
上下滚动终端屏幕
Linux 系统的命令行下,可以直接使用 man
命令查询 C/C++ 函数和例子。
比如 man socket
查询 socket 函数,直接 man getaddrinfo
可以查看例子。下面再放一张珍藏的常用快捷键示意图:
Linux下的路径表示方法
- 以”/“开头的表示从根目录开始,根目录就是linux的最上层目录, 例如 /home
- 以”./“开头的表示从当前目录开始,当前目录就是当前终端所在的目录,也称为工作目录,例如 ./samples
- 以”~”符号开头的,表示从用户目录开始,用户目录表示当前用户的根目录,用户根目录一般路径为/home/用户名,在我机器上就是/home/wei, 例如 ~/samples 的绝对路径就是/home/wei/samples。
推荐教程
Learn Enough Command Line to Be Dangerous