不同应用领域的主流操作系统:
桌面(客户端)操作系统
window系列(用户群体大)
masOS(适合于开发人员)
Linux(应用软件少)
服务器类操作系统
Linux(安全稳定免费,占有率高)
Window Server(付费,占有率低)
嵌入式操作系统
Linux
移动设备操作系统
IOS
Android(基于Linux)
Linux内核版及发行版:
内核版:是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序(负责跟硬件打交道)
Linux发行版:通常包含了包括桌面,办公套件,媒体播放器,数据库等应用软件(在内核的基础上进一步封装,所以发行版里已经包含了内核)
常见的发行版本有:Ubuntu, CentOS,Red Hat ,Debian等
window和Linux的文件目录结构对比:
window
window操作系统是划分了一个个的盘符,而且window的操作系统属于单用户操作系统,把数据存放在哪个盘符是我们自己说了算
Linux
Linux操作系统没有盘符的概念,只有一个根目录,根目录下有个home目录,home目录下便是用户目录。因为Linux是多用户操作系统,数据的存放不是一个人说了算,所以Linux提供了用户目录,每个用户只能在自己的用户目录下进行操作
常用命令:
查看文件和目录
ls:查看当前文件夹的内容
ls -lh :查看当前文件夹的详细信息
ls -a:查看当前文件夹的所有子目录和文件(包括隐藏文件)
find [路径] -name "*.py" :查找指定路径下扩展名是.py的文件名,包括子目录
pwd:查看当前路径
切换目录
cd [目录名]:切换目录
cd / cd ~ :回到家目录(/home/用户目录)
cd. :进入当前文件夹
创建和删除
touch [文件名]:创建文件
touch .[文件名]:创建隐藏文件
mkdir [目录名]:创建目录
mkdir -p a/b/c/d :递归创建目录
rm [文件名]:删除指定的文件名
rm -r [目录名] :删除指定的文件夹
拷贝与移动文件
cp [源文件名] [目标文件名]
cp -r [源文件夹] [目标文件夹]
mv [源文件名] [目标文件名]
mv [源文件夹] [目标文件夹] (如果源文件跟目标文件在同个文件夹那就相当于重命名了)
查看文件内容
cat 文件名(全部显示)
more 文件名 (分屏显示)
grep "查找内容" 文件名(显示所有在行,查找内容高亮)
grep -o "查找内容" 文件名(只显示查找内容)
grep -v "查找内容" 文件名 (显示不包含查找内容的行)
grep "[0-9a-z]*" 文件名 (要使用*必须搭配中括号一起使用)
ls -alh | grep "文本内容" :一个命令的输出可以通过管道“|”作为另外一个命令的输入,也就是在ls -alh的结果中 grep "问本内容"
文件内容统计(对于报表型的文件内容)
awk '{print $1,$4}' 文件名 :打印第一列和第四列
awk '$1==1.1 && $2==1.2 {print $0}' 文件名:打印第一列等于1.1且第二列等于1.2的行($0表示所有列也就是整行)
文本内容替换
sed -i 's/替换的内容/要替换的内容/g' 文件名 :g表示全局替换,不加g只替换第一次
sed -i 's/\./\;/g' 文件名 :替换特殊字符需要使用转义符\
打包压缩
tar -zvcf 打包压缩文件.tar.gz 被压缩的文件
tar -zxvf 打包压缩文件.tar.gz
apt安装/卸载软件
sudo apt install 软件包 :安装软件
sudo apt remove 软件名 :卸载软件
sudo apt upgrade :更新已安装的包
系统信息
date:查看系统时间
cal:查看日历,-y可以查看一年的日历
df -h :显示磁盘剩余空间(重点关注根目录)
du -h[目录名] :显示目录下的文件大小
进程信息
ps aux : 查看进程的详细信息
top : 动态显示运行中的进程并且排序,要退出top可以输出q
kill [-9] 进程代号:终止指定代号的进程 ,-9表示强行终止
其他
echo "文本内容" > 文件名 :将原本显示在终端上的内容输出(覆盖)到指定文件(相当于 touch 文件名 + cat 文件名 +输入“问本内容” )
echo "文本内容" >> 文件名 : 将原本显示在终端的内容追加到指定文件
tree:显示当前目录的树状结构
clear:清屏
"ctrl" + "+":放大终端字体
"ctrl" + "-":缩小终端字体
查看和配置网卡信息:
网卡:是一个专门负责网络通讯的硬件设备
IP地址:是设置在网卡上的地址信息
我们可以把电脑比作电话,网卡比作SIM卡,IP地址就是电话号码
ifconfig :查看网卡配置信息
ifconfig | grep inet : 查看网卡对应的IP地址
ping IP地址 :检测到目标主机是否正常连接
ping 127.0.0.1 : 检测本地网卡是否正常工作
远程登录和复制文件:
域名与端口号
域名:由一串用点分隔的名字组成(例如:www.baidu.com),是ip地址的别名,方便用户记忆
端口号:通过ip地址找到网络上的计算机,通过端口号可以找到计算机上运行的应用程序
SSH服务器默认端口号是22
Web服务器默认端口号是80
SSH
Linux中SSH是非常常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上
SSH客户端与SSH服务器:端数据传输是加密的,可以防止信息泄漏。数据传输是压缩的,可以提高传输速度
首先在虚拟机中安装SSH服务:
sudo apt-get install openssh-server
然后启动服务:
sudo /etc/init.d/ssh start
下载安装SSH客户端(window下建议安装的客户端是filezilla和Xshell)
进入Xshell新建连接(选择SSH协议,主机为虚拟机ip,端口默认为22):
进入filezilla新建站点(选择SSH协议,主机为虚拟机ip,端口默认为22):