写在前面
很多深度学习/机器学习/数据分析等领域(或者说大多数在Python环境下进行操作的领域)的初学者入门时是在Windows上进行学习,也得益于如Anaconda等工具把环境管理做的如此友善。
但如果想在该领域继续深耕,一定会与Linux操作系统打交道,经常有人问是否需要系统的学习一遍Linux?答案是不需要,只需掌握一些基本命令,对于特定的操作,遇到了再面向搜索引擎/chatGPT也是完完全全OK的。
虽然不要求全知晓,那么至少以下高频基本操作需要掌握,一起看看吧。
导航命令
首先需要掌握的是导航命令,不出意外的话会是最常用的:
- cd:进入某个目录
- ls:列出当前目录下所有内容,可以搭配-l选项以长格式显示目录内容,其中包含有关权限、所有权和时间戳的信息
- pwd:显示当前目录的路径
- mkdir:创建新目录,比如想在当前目录下创建名为build的文件夹,可以使用mkdir build
文件管理命令
其次是文件管理命令,这些命令允您创建、删除和管理文件和目录:
- touch:用于创建新文件,很多初学者会发现woc怎么右键不能创建新文件,这不就来了。例如,要创建名为new_file.txt的新文件,可以使用touch new_file.txt
- rm:用于删除文件,例如,要删除old_file.txt文件,可以使用rm old_file.txt,要删除整个文件夹则rm -r build/,答应我别乱rm
- cp:用于将文件从一个位置复制到另一个位置,例如,要将file.txt文件从当前目录复制到Desktop目录,可以使用cp file.txt ~/Desktop
- mv:用于将文件从一个位置移动到另一个位置或更改文件名,例如,要将file.txt文件从当前目录移动到Desktop目录,可以使用mv file.txt ~/Desktop
- find:找寻某文件位置,比如我需要在/home下找名为file.txt的文件,可以使用find /home -name "file.txt"
文本处理命令
接着是文本处理命令,可以操作文本文件:
- cat:用于显示文本文件中的内容,例如,要显示file.txt文件的内容,可以使用cat file.txt
- grep:用于在文件中搜索,例如,要在file.txt中搜索单词"hello",可以使用grep "hello" file.txt,关于grep用的还是非常多的
- sort:用于对文件的内容进行排序,例如,要按字母顺序对file.txt的内容进行排序,可以使用sort file.txt
- wc:用于计算文件中的行数、单词数和字符数,例如,要计算file.txt中的行数,可以使用wc -l file.txt
系统信息命令
掌握系统信息命令是为了获取系统信息并监控性能:
- uname:用于显示有关操作系统的信息,例如,要显示操作系统的名称和版本,可以使用uname -a
- top:用于显示有关正在运行的进程及其对系统资源使用情况的信息,它提供了系统性能的实时视图,比如监控某程序运行时cpu和内存占用情况,htop也用的很多
- df:用于显示系统上可用磁盘空间的信息,例如,要显示所有已挂载文件系统的磁盘空间使用情况,可以使用df -h
- free:用于显示系统上可用内存的信息,例如,要显示系统内存的使用情况,可以使用free -m
软件包管理命令
当你经常在gayhub跟着readme进行环境配置时,多数都是需要进行这一步:
- apt-get update:用于更新系统上的软件包索引,从互联网下载有关可用软件包及其依赖关系的最新信息
- apt-get install:用于安装软件包,例如,要安装nano文本编辑器,可以使用apt-get install nano
- apt-get remove:用于删除软件包,如要删除nano文本编辑器,可以使用apt-get remove nano
- apt-get upgrade:用于将系统上所有已安装的软件包升级到最新版本
网络管理命令
- ifconfig:用于配置系统上的网络接口,提供有关IP地址、网络掩码和其他网络配置详细信息
- ping:用于测试与远程主机的连接,它向远程主机发送请求并测试接收响应所需的时间
进程管理命令
- ps:用于显示系统上正在运行的进程信息,提供有关进程ID、命令名称和其他进程详细信息
- kill:用于杀死正在运行的进程,向进程发送一个信号以停止它的运行
以上命令只是展示的最基础用法,但也能解决绝大部分使用情况。