Linux 目录结构 (了解)
Linux 不像windows有C、D、E等盘符的概念,所有文件均在根目录( / )下,通过路径区分
├── bin (bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令)
├── boot (存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件)
├── dev (Linux 的外部设备,例如 硬盘)
├── etc (系统管理所需要的配置文件和子目录,相当于注册表)
├── home (用户主目录)
├── lib ( Library 的缩写,存放系统最基本的动态连接共享库)
├── lib64
├── lost+found (这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件)
├── media (可移动设备,例如U盘、光驱等)
├── mnt
├── opt
├── proc
├── root (root用户(超级管理员)主目录)
├── run
├── sbin
├── snap
├── srv
├── swapfile
├── sys
├── tmp
├── usr
├── var
最常用的是 /home /etc /dev
用户目录 为 /home/username
简写为~
Q:数据盘在哪?
A:已经挂载到了 /data 下
Linux远程登陆
Linux 一般作为服务器使用,而服务器一般放在远程机房,不可能在机房操作。
Linux 系统中是通过 ssh(Secure Shell ) 服务实现的远程登录功能,默认 ssh 服务端口号为 22
SSH 与 远程桌面 的区别:
SSH传输的是加密的命令(传输极快) , 远程桌面传输的是图像信息
SSH登录方式
-
账号 、密码
-
账号 、密钥 (推荐 、远程开发必备)
-
SSH登录默认文件夹是用户文件夹
SSH工具推荐
MobaXterm
- 目前最全能的免费工具
- 支持SSH
- 支持文件传输(SFTP\FTP)
- 支持Xserver (远程开发必备)
SSH "显示"界面
-
SSH的界面显示依靠 X server (X11 协议)
-
测试 :
xclock
Linux基础命令
文件 增 删 改 查 复制 移动 快捷方式(软连接)
0. 查看文件、文件夹
普通查看 ls
查看全部信息 ls -la
或 ll
注意空格和 - 的位置 (linux 命令参数)
有的系统没有ll指令,可以使用 alias[别名]=[指令名称]
进行自定义
例如: alias ll=ls -la
1. 新建文件夹
例:新建 workspace 文件夹 Tips:Linux中,尽量使用英文路径:方便、不易出错
mkdir workspace
2. 新建文件
touch hello.txt
3. 切换目录
-
查看当前目录
pwd
eg:
(base) hipeson@hipeson:~$pwd
/home/hipeson -
切换到用户目录
cd ~
-
切换到特定目录
cd /data
-
回到上层目录
cd ..
-
回到上次的目录
cd -
-
绝对路径和相对路径
假设当前处于用户user的Desktop目录-
绝对路径:完整的包含根目录的路径,例如:
/home/user/Desktop
-
相对路径
假设相对于用户目录./Desktop
-
4. 复制
- 复制文件
cp 源文件 目标文件
- 复制文件夹文件夹
cp -r 源文件 目标文件
5. 移动
- 复制文件
mv 源文件 目标文件
- 复制文件夹文件夹
mv -r 源文件 目标文件
6. 删除文件
- 删除文件
rm 文件名
- 删除文件夹
rm -r 文件夹名
7. 重命名文件、文件夹
mv 现名称 新名称
8. 建立快捷方式(软连接)
ln -s 原路径 新路径
9. 查看磁盘使用情况
df -h
10. 查看ip地址
ifconfig
ip add
11. 进程管理
-
查看进程
ps |grep 进程名
-
删除进程
kill 进程ID
12. 查看cpu、ram、进程、GPU信息
- 查看 cpu、ram、进程信息
htop
按下q
退出 - 查看GPU信息
1. 查看一次:nivdia-smi
2. 动态查看:每隔0.1刷新一次watch -n 0.1 nvidia-smi
按 Ctrl + C 退出
13. 文件解压
- zip
unzip 文件名
- tar文件
tar zxvf 文件名
14. 文件压缩
1.zip文件
zip -qr 压缩文件名 文件、文件夹名
2.tar、tar.gz
tar zcvf 压缩文件名.tar.gz 文件、文件夹名
15. 查找文件
- 按名称查找
find -name hello.txt
- 按名称和通配查找
find -name hello.*
(不限后缀名)
16. vim使用
以编辑 hello.txt 为例
-
vim hello.txt
-
按下
i
-
编辑
-
ESC
退出编辑模式 -
:
进入底行命令模式 -
wq
保存并退出w 代表写入
q 退出vim
17. shell脚本创建与基本使用
-
创建sehll脚本
touch test.sh
注意:linux系统不是根据.sh的后缀名来判断是不是可执行文件
txt也可以执行,但不这么做sh是约定俗成
-
编辑sehll脚本
首行添加#!/bin/bash
后面跟上执行的命令
例如:
conda activate open-mmlab
python tools/train.py configs/grage/grape.py
完整代码:
#!/bin/bash
conda activate open-mmlab
python tools/train.py configs/grage/grape.py
- 为脚本添加可执行权限
sudo chmod +x 脚本名
输入密码 注意:密码不会回显 - 执行shell脚本
./脚本名
18. ranger文件浏览器
ranger
使用方向键控制
q
退出
19. tree目录查看工具
使用tree应该注意指令层次
例如,查看一层:tree -L 1
20. 自动索引与通配规则
命令行中只需要输入前几个字母,按下table键,即可自动补全 命令名、文件名、路径
*代表通配,例如 列出当前路径下的 左右python文件
ls *.py
21. 重定向命令 >>
将当前路径所有文件名保存到文本文档中
ls >> list.txt
原本应该输出在终端中的内容被自动写入了list.txt
22. 管道命令 |
将一个命令的输出作为另一个的输入
例子中的ps |grep 进程名
就是将ps的输出,传递给了grep程序,grep完成查找任务
23. Ctrl + C 的用处
Ctrl + C 在linux终端中是给进程发送终止信号
,不是复制,在终端程序运行不要想当然的Ctrl C
恭喜你入门了~
有了以上的基础,就可以学习
-
系统换源(阿里源稳定)
-
软件安装
apt、dpkg -
系统环境变量配置、个人环境变量配置
-
pip换源(豆瓣源速度快)
-
慎用 sudo
尤其是在使用root权限删除文件夹时,一定要注意检查参数合法性!!!例如: 文件夹路一定不能用
/
开头(除非指定绝对路径,并且路径存在),否则可能会产生和
sudo rm -rf /*一样清除全部数据的严重后果…