适用于 Linux 的 Windows 子系统 (WSL) 可让开发人员直接在 Windows 上按原样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。
WSL安装
1 | Ubuntu 已安装。 |
1 | wsl --version #查看wsl版本 |
建议自定义盘符安装
Linux常用命令
1. 文件和目录操作
ls
:列出目录内容1
2
3
4ls # 列出当前目录内容
ls -l # 列出详细信息(文件权限、大小等)
ls -a # 列出所有文件,包括隐藏文件
ls -R # 递归列出所有子目录的文件cd
:改变当前工作目录1
2
3cd /path/to/directory # 切换到指定目录
cd ~ # 切换到当前用户的主目录
cd .. # 返回上一级目录pwd
:打印当前工作目录1
pwd # 显示当前所在的目录路径
mkdir
:创建新目录1
mkdir new_folder # 创建一个名为 new_folder 的目录
rmdir
:删除空目录1
rmdir empty_folder # 删除一个空目录
rm
:删除文件或目录1
2
3rm file.txt # 删除文件
rm -r folder # 递归删除目录及其所有内容
rm -rf folder # 强制删除目录及其内容,不提示确认cp
:复制文件或目录1
2cp file.txt /path/to/destination # 复制文件
cp -r folder /path/to/destination # 递归复制目录及其内容mv
:移动或重命名文件/目录1
2mv file.txt /path/to/destination # 移动文件到目标目录
mv oldname.txt newname.txt # 重命名文件touch
:创建空文件或更新文件时间戳1
touch newfile.txt # 创建一个名为 newfile.txt 的空文件
2. 文件查看
cat
:查看文件内容1
cat file.txt # 显示文件的内容
less
:分页查看文件内容1
less file.txt # 分页查看文件内容,按 `q` 退出
head
:查看文件的开头几行1
2head file.txt # 显示文件的前10行
head -n 20 file.txt # 显示文件的前20行tail
:查看文件的结尾几行1
2tail file.txt # 显示文件的最后10行
tail -n 20 file.txt # 显示文件的最后20行grep
:搜索文件中的文本1
2grep 'search_text' file.txt # 在文件中查找包含 'search_text' 的行
grep -r 'search_text' /path # 递归搜索目录中的文件
3. 系统信息和管理
top
或htop
:查看系统运行的进程和资源使用情况1
2top # 实时显示系统进程信息
htop # 功能更强大的 `top` 替代(需要单独安装)ps
:显示当前运行的进程1
2ps # 显示当前终端的进程
ps aux # 显示所有用户的所有进程kill
:终止进程1
2kill <process_id> # 终止指定进程ID的进程
kill -9 <process_id> # 强制终止进程df
:显示磁盘空间使用情况1
df -h # 以人类可读的方式显示磁盘使用情况
du
:查看文件或目录的磁盘使用量1
2du -h folder # 显示目录的大小
du -sh folder # 显示目录的总大小
4. 文件权限
chmod
:修改文件权限1
2chmod 755 file.txt # 设置文件权限为 755(rwxr-xr-x)
chmod u+x file.txt # 给文件所有者添加执行权限chown
:更改文件所有者1
sudo chown user:usergroup file.txt # 更改文件所有者和所属用户组
5. 网络操作
ping
:测试与某个地址的网络连接1
ping google.com # 测试与 google.com 的连接
wget
:下载文件1
wget http://example.com/file.zip # 从指定 URL 下载文件
curl
:从 URL 获取数据1
2curl http://example.com # 从指定 URL 获取数据
curl -O http://example.com/file.zip # 下载文件
6. 压缩和解压缩
tar
:打包与解压 tar 文件1
2
3
4tar -cvf archive.tar folder/ # 将目录打包成 .tar 文件
tar -xvf archive.tar # 解压 .tar 文件
tar -czvf archive.tar.gz folder/ # 创建 gzip 压缩包
tar -xzvf archive.tar.gz # 解压 gzip 压缩包zip
/unzip
:压缩和解压 zip 文件1
2zip archive.zip file1 file2 # 压缩多个文件为 zip 包
unzip archive.zip # 解压 zip 文件
7. 权限提升
sudo
:以超级用户权限执行命令1
2sudo command # 以超级用户权限执行某个命令
sudo su # 切换到超级用户模式
8. 搜索和查找
find
:查找文件或目录1
find /path -name filename # 查找目录中名为 filename 的文件
locate
:快速查找文件1
locate filename # 查找文件路径(需要先安装 `mlocate` 并更新数据库:`sudo updatedb`)
9. 系统更新
apt
:用于 Ubuntu 等基于 Debian 的发行版1
2
3
4sudo apt update # 更新软件包列表
sudo apt upgrade # 升级已安装的软件包
sudo apt install <package> # 安装指定软件包
sudo apt remove <package> # 卸载指定软件包
10. 移动windows上的项目至WSL
1 | mv /mnt/c/Users/86184/Downloads/xxx.tar.gz /home/bio_kang/software/ #移动 |
Linux部署Python项目
在Linux环境下,用conda管理python环境是较优选择。
1.安装 Miniconda 或 Anaconda
下载 Miniconda 安装脚本:
1 | wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh |
运行安装脚本:
1 | bash Miniconda3-latest-Linux-x86_64.sh |
按照提示完成安装。
重新加载 .bashrc
以使 conda
命令生效:
1 | source ~/.bashrc |
验证 conda
是否安装成功:
1 | conda --version |
2.创建虚拟环境
创建一个新的虚拟环境:
1 | conda create --name myenv python=3.8 |
在这里,myenv
是虚拟环境的名称,python=3.8
是你想使用的 Python 版本(可以根据需要选择其他版本)。
激活虚拟环境:
1 | conda activate myenv |
激活后,你的终端前面应该会显示 (myenv)
,表示当前正在该虚拟环境下工作。
安装依赖包:
1 | conda install numpy pandas |
3.常用操作
要查看当前系统中的所有 conda
虚拟环境,可以使用以下命令:
1 | conda env list |
如果你不再需要某个虚拟环境,可以将其删除:
1 | conda remove --name myenv --all |
当你完成工作时,可以通过以下命令退出虚拟环境:
1 | conda deactivate |
7. 更新和管理环境
更新
conda
自身:1
conda update conda
更新环境中的所有包:
1
conda update --all
8. 导出和导入环境
导出环境可以用于分享或者在另一台机器上重现该环境。
导出当前环境:
1
conda env export > environment.yml
使用
yml
文件创建环境:1
conda env create -f environment.yml