1 学习工具、网站、方法:
1) 分享代码平台:GitHub,码云
2) 总结知识点平台:CSDN(知识点总结、解题经历)、博客园
3) 笔试题、面试题:牛客网(剑指offer)、力扣(侧重算法题)、pat考试
4) 问答网站:思否,知乎,抖音,今日头条
5) 思维导图:总结归纳知识点xmind
6) Makedown(typora)
7) 文本编辑器:VS code
8) 视频播放器:potplayer
2 开发环境
virtualBox 虚拟机工具 免费开源
Ubuntu 14.04 TLS(卡顿:1024-4096)
vim 代码编辑器
gcc C语言代码编译器
3 Linux系统介绍 (UNIX)
1、发展过程:BCPL->newB->C语言->UNIX系统->Minix操作系统->Linux操作系统
2、Linux管理硬盘能力强大,因此我们看到的只有一个分区
3、目录
/ 根目录,所有文件都存储在其中
~ 用户主目录
4、各目录表示含义
. 表示当前目录
.. 表示上一级目录
/bin(根目录下的bin):存储系统命令
/dev: 存储设备文件(一切皆文件)
/media: 多媒体目录:U盘、光驱、挂载的目录
/proc: 记录了程序运行期间资源的使用情况
/sbin: 存储超级用户才能使用的系统命令
/tmp: 存储一些零时文件
/boot: 存储系统启动时的相关文件
/etc: 存储各种软件的配置文件
/lib: 存储一些普通的库文件:
静态库(.a结尾)
共享库(.so结尾)
/mnt: 存储与其他系统进行映射的目录文件
/root: 超级用户目录
/srv: 存储一些系统启动后需要提取的数据文件
/usr: 存储头文件
/home: 存储用户主目录
/opt: 存储用户安装的应用软件
/run: 存储临时文件
/sys: 存储系统相关的文件
注意:目录结构是倒悬树结构,目录的切换只能上下切换,不能左右切换。
5、相对路径和绝对路径
绝对路径:从根目录开始描述一个位置
相对位置:从当前位置(工作路径)来描述另一位置
4 Linux系统命令
1)常用命令
ls 显示当前目录下的文件名
ls -a 显示当前目录下的所有文件,包括隐藏文件(以 . 开头的都是隐藏文件)
ls -l 显示文件的详细信息
cd 进入一个目录
clear 清理屏幕 (Ctrl+l)
pwd 显示当前所在的路径
whoami 显示当前用户名
2)文件相关命令
注意:不是所有的功能都有对应的命令
touch filename 创建文件命令
rm filename 删除文件命令,不经过回收站,慎。
cat/more/head/tail 查看文件命令
cat 会把文件内容全部显示到终端上,适合内容较少的文件
more 从文件开头分页显示 (摁回车显示下一行,摁空格显示下一页,输入 q 退出)
head 只显示开头10行
tail 只显示结尾10行
cp src dest 复制文件命令 (注:该示例命令是指将文件从src复制到dest)
mv src dest 移动文件命令,同时具备重命名文件的功能
(注:该示例命令是指将文件从src移动到dest)
3)目录相关命令
mkdir dirname 创建目录
mkdir -p: 创建多层目录
rmdir diename 删除目录,只能删除空目录
rm -rf 删除非空目录
cp -rf src dest 复制目录
mv src dest 移动目录
4)网络相关命令
ifconfig 查看网络配置信息 (windows中查看是IPconfig)
sudo ifconfig ethn 10.0.2.xxx netmask 255.255.255.xxx 修改IP地址、子网掩码
sudo ifconfig ethn down 禁用网卡
sudo ifconfig ethn up 启用网卡
ping ip地址 测试网络连通性
可以测试ip,也可以测试网址
172.0.0.1本机地址,可以用来测试网卡是否正常
Windows只测试4次,-t /t 连续测试,Ctrl+c结束
5)网络相关的非系统命令
ftp ip地址 输入用户名和密码
采用明码传输(不够安全,有可能被窃听,一般在公司内部使用)
telnet ip地址 然后输入用户名和密码
采用明码传输(不够安全,有可能被窃听,一般在公司内部使用)
用于远程登录一台服务器进行使用
ssh 用户名@ip地址,然后输入密码
采用加密方式传输,因此比较安全
exit 退出
6)其他相关命令
tar 压缩\解压文件
-zcvf 包名 要压缩的目录 创建压缩包
-zxvf 包名 解压压缩包
chmod 修改文件权限
chmod mmm(表示三个值) 文件名 ( m=r(4)+m(2)+x(1) )
mmm:自己的权限,网组的权限,其他的权限
注意:目录必须拥有执行权限才能进入访问
chmod +/-rwx 文件名 所有用户权限一起增减
find 查找命令
find 位置 条件 查询文件
find / -name stdio.h
grep 过滤内容
grep "关键词" 文件名
grep "printf" /user/include/stdio.h
重启系统 sudo reboot
关机 sudo init
安装软件 sudo apt-get install 软件名
更新软件源 sudo apt-get update
更新系统 sudo apt-get upgrade
查询帮助手册 man key
分章节管理系统
1.系统命令
2.系统函数
3.C标准库函数
5 Ubuntu使用小技巧
1)快捷命令
Ctrl+l 清理屏幕
Ctrl+alt+t 快捷调出终端
Ctrl+shift+t 终端下新建标签页
Ctrl+alt+方向键 切换工作区(默认关闭。需要打开)
tab 自动补全文件名,目录名
alt+tab 切换程序
6 重定向、管道、通配符
1)重定向:把命令的执行结果写入到文件中
cmd > filename 如果文件不存在则创建,如果文件存在则清空写入
cmd >> filename 如果文件不存在则创建,如果文件存在则追加写入
2)管道:类似一根管子把两个命令连接起来,一个命令的执行结果作为另一个命令的数据源
cmd1 | cmd2
find / | grep "stdio" 查询所有文件命中包含stdio的文件
3)通配符:可以进行模糊执行命令
? 可以替代任意的一个字符
* 可以替代任意多个字符