操作系统有什么用?
操作系统是计算机系统中的核心软件,负责管理和协调计算机的硬件和软件资源,提供用户界面,并执行用户程序。
硬件管理:操作系统管理计算机的硬件资源,包括处理器、内存、磁盘、外部设备等。它控制着这些硬件资源的分配、使用和管理,确保它们能够高效地运行。
文件管理:操作系统管理计算机上的文件和目录,包括创建、删除、复制、移动、打开文件等操作。它提供了一个统一的文件系统,使用户能够方便地组织和访问自己的数据。
进程管理:操作系统管理计算机上正在运行的进程(程序执行的实例)。它分配和调度处理器时间,确保每个进程都能得到执行,并控制进程之间的通信和同步,以保证系统的稳定和安全。
用户界面:操作系统为用户提供了交互界面,使用户能够与计算机进行沟通和操作。它可以是命令行界面(如传统的命令行终端)或图形用户界面(如现代的窗口操作系统)。
网络支持:现代操作系统通常具有网络功能,能够管理计算机与其他计算机或设备之间的通信。它提供了网络协议栈和网络接口,使计算机能够连接互联网并进行数据传输。
总的来说,操作系统起着承上启下的作用,它使计算机硬件能够运行起来并提供给用户一个友好的界面,使用户能够方便地使用计算机资源和运行应用程序。
Linux 是操作系统(如Ubuntu)的内核
命令行 shell
作用
1.保护Linux内核(用户和Linux内核不直接操作,通过操作Shell,Shell和内核交互)
2.命令解释器
shell命令
常用目录文件命令
ls
:列出当前目录中的文件和子目录。常用选项如-l
可以显示详细信息,-a
可以显示隐藏文件。
cd
:改变当前工作目录。例如,cd /home/user/Documents
将当前工作目录切换到/home/user/Documents
。
touch
:创建一个新文件,或者更新已有文件的访问时间和修改时间。例如,touch file.txt
将创建一个名为file.txt
的新文件。
rm
:删除文件或目录。例如,rm file.txt
将删除名为file.txt
的文件。
mkdir
:创建一个新目录。例如,mkdir mydir
将创建一个名为mydir
的新目录。
rmdir
:删除一个空目录。例如,rmdir mydir
将删除名为mydir
的空目录。
cp
:复制文件或目录。例如,cp file.txt newfile.txt
将复制file.txt
并将副本重命名为newfile.txt
。
mv
:移动文件或目录,也可用于重命名文件或目录。例如,mv file.txt newdir/file.txt
将文件file.txt
移动到newdir
目录下。
文件查看命令
cat:
cat命令可以用来查看文件的内容,特别适用于查看文本文件。对于ASCII码文件,即以能在终端显示的ASCII码字符组成的文件,可以直接使用cat命令查看。示例命令:cat filenameod -c:
od命令可以以字符或ASCII码形式显示文件的内容。适用于查看任何类型的文件,包括文本文件和二进制文件。示例命令:od -c filenamehead/tail:
head命令用于查看文件开头的内容,tail命令则用于查看文件末尾的内容。默认都显示文件的前10行。可以通过-n选项来指定显示的行数。示例命令:head/tail filename 或者 head/tail -n 行数 filename
查找指定文件名的文件:
find 文件夹 -name 文件名
例如:
find . -name '*.txt' # 查找当前目录及其子目录中所有扩展名为txt的文件
使用通配符进行文件名匹配:
*
:匹配任意长度的任意字符的文件名。
例如:find . -name 'prefix*.txt' # 查找以prefix开头且扩展名为txt的文件
?
:匹配一位长度的任意字符的文件名。
例如:find . -name '??.txt' # 查找两位字符且扩展名为txt的文件
[]
:匹配一位长度的指定字符的文件名。
例如:find . -name '[1-4][1-4].txt' # 查找以两位字符且第一位字符为1到4,第二位字符为1到4的文件,如11.txt, 22.txt等
[1, 2, 3, 4]
:指定字符1、2、3、4。
例如:find . -name '[1,2,3,4].txt' # 查找以一位字符且为1、2、3或4的文件,如1.txt, 2.txt, 3.txt等
[^2]
:指定除了2以外的字符。
例如:find . -name '[^2].txt' # 查找以一位字符且不为2的文件,如1.txt, 3.txt等
whereis
查找指定内容的路径
示例:
whereis 二进制程序名/软件名
3.grep
查找文件中内容
示例:
grep 'printf' /usr/include/stdio.h 会查找包含"printf"的行,并将它们输出到终端。
4.重定向:
将原本要输出在终端的内容重定向到一个文件中
>> 追加重定向 在原来内容基础上追加新的内容
> 覆盖重定向 将原来的内容覆盖掉
示例:
ls > file.txt
ls >> file.txt
如果目标文件不存在,系统将会创建该文件;如果目标文件已经存在,将根据使用的重定向操作符来执行不同的操作。
5.管道:
将前面命令的输出作为后续命令的输入 操作符为 |
ls | grep 'file' # 列出当前目录下的文件并将包含"file"的行筛选出来
6.其余命令:
ps -ef 查看进程信息
echo 在终端打印内容
du -k/-m 测试文件大小
eg:一条shell命令,将/usr/include/stdio.h文件后200行中与extern相关的内容记录到file.txt文件中
tail -n 200 /usr/include/stdio.h | grep 'extern' > file.txt
7.压缩解压命令:
.tar.gz
.tar.bz2
1.压缩命令:
tar -zcvf 压缩文件包名.tar.gz 文件夹
tar -jcvf 压缩文件包名.tar.bz2 文件夹
2.解压命令:
tar -zxvf 压缩文件包.tar.gz
tar -jxvf 压缩文件包名.tar.bz2
示例:
tar -zcvf dir.tar.gz dir
tar -jcvf dir.tar.bz2 dir
tar -zxvf dir.tar.gz
tar -jxvf dir.tar.bz
8.让虚拟机上网:
1.ifconfig
查看网卡信息
2.ping www.baidu.com
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=1 ttl=51 time=32.7 ms
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=2 ttl=51 time=32.7 ms
3.将虚拟机设置为NAT模式:
NAT模式:Windows有网,Ubuntu就有网
桥接模式:Windows和Ubuntu网络独立
1.点击"虚拟机"
2.点击"设置"
3.点击"网络适配器"
4.选择"NAT模式"
5.点击"确定"
4.配置Ubuntu系统的IP地址为自动获取IP地址
1.sudo vim /etc/network/interfaces
打开网卡配置文件
2.修改文件内容为:
auto lo
iface lo inet loopback
auto ens33
iface ens33 inet dhcp
3.保存退出
ESC
:wq
4.重启网络服务
sudo /etc/init.d/networking restart
5.测试与百度是否连通
ping www.baidu.com
9.apt-get工具集:
1.自动下载软件
2.能够分析软件的依赖关系
1.设置apt-get工具的源:
1.让虚拟机上网
2.在Ubuntu左侧找到"Ubuntu Software"
3.在Ubuntu上方找到"Ubuntu Software" 右键选择"Software & Updates"
4.DownLoad Form 选择 "Others" -> "China" -> "mirrors.aliyun.com"
2.执行命令:
1.sudo apt-get autoclean
清除旧源
2.sudo apt-get update
更新新源
3.sudo apt-get install -f
重建软件源依赖关系
4.安装软件
sudo apt-get install wireshark
安装Wireshark软件
sudo apt-get install valgrind
安装valgrind内存泄露检测工具
5.卸载软件
sudo apt-get remove 软件名
6.查看是否安装成功
dpkg -l 软件名
7.安装
sudo dpkg -i 软件包名.deb