目录
一、初始Linux
1. Linux的起源
2. Linux是什么?
3. Linux内核版本
4. Linux的应用
5. 终端
6. Shell
7. Linux目录结构
二、基本命令
1. 基本的命令格式
2. shutdown 关机命令
3. pwd 当前工作目录
4. ls 查看目录内容
5. cd 改变工作目录
6. uname 显示系统重要信息
7. touch 改变文件的时间(创建文件)
8. mkdir 创建目录
9. cp 拷贝文件或目录
10. rmdir 删除空目录
11. rm 删除文件或目录
12. mv 移动或更名
13. tar
打包
查看
添加
编辑
解包
压缩
解压缩
14. man手册
一、初始Linux
1. Linux的起源
- Unix:Dennis Ritchie和Ken Thompson发明了C 语言,而后写出了 Unix的内核
- Minix:MINIX是一种基于微内核架构的类UNIX计 算机操作系统,由 Andrew S. Tanenbaum发明
- Linux:Linux内核 芬兰赫尔辛基大学的 研究生Linus Torvalds基于Gcc、 bash开发了
- Linux发行版:Linux发行版 因为Linux的内核是 开源的,在之后各个 公司开始通过Linux 的内核开发不同发行 版本的Linux
2. Linux是什么?
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、 支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和 64位硬件。
- Linux内核:是一个Linux系统的内核,而不是一个操作系统
- Linux操作系统:红帽操作系统(RedHat),乌班图(Ubuntu)等 才是操作系统的名字,他们都使用Linux内核,我们 常常把它们笼统的称为Linux操作系统。
3. Linux内核版本
在Linux下通过终端 输入 uname -r 可以得到Linux的内核版本
4. Linux的应用
- 服务器 :Linux做服务器操作系统是它的强项, 市面上90%的服务器都是Linux https://toolbar.netcraft.com/site_ report
- 移动终端:底层是Linux的安卓系统的移动端的穿戴设备,Linux作为核心系统是首选
- 大数据:大数据需要大量的计算,需要消耗大量的内存和CPU的资源。对于没有图形界面的Linux来说,无疑是最好的选择
- 云计算:云计算将是未来数据和用户虚拟系统的管理,就需要使用Linux作为服务器
5. 终端
Linux 的终端就是控制台, 是用户与内核交互的平台, 通过输入指令 来控制内核完成任务操作。
6. Shell
shell是linux的外壳。是一个内核的解释器,让我们跟内核交流翻译的工具。、
- 命令的解释:可以解析我们给shell终端的命令,来控制操作系统做相关的功能。
- 保护操作系统:可以帮助我们通过一条简单的命令来调用系统函数或者系统接口,来依次完成我们需要的功能,不会导致调用错误或者其他问题导致系统不能正常使用。
7. Linux目录结构
/:
根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中。/bin:
存放基本用户命令的二进制文件,如常用的命令ls、tar、mv、cat等。/sbin:
存放系统管理员命令的二进制文件,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。/boot:
存放启动 Linux 操作系统所需的引导文件和内核镜像。/etc:
存放系统配置文件。如:
/etc/passwd 用户数据库,其中的域给出了用户名、真实姓名、家目录、加密的口令和用户的其他信息. /etc/fstab 启动时mount -a命令(在/etc/rc 或等效的启动文件中)自动mount的文件系统列表. Linux下,也包括用swapon -a启用的swap区的信息. /etc/login.defs login 命令的配置文件.
/home:
用户主目录,也叫家目录。- /var: 存放变化文件,如日志、缓存等,这个路径就重要了!不论是登入、各类服务的问题发生时的记录、以及常态性的服务记录等等的记录目录。
/tmp:
临时文件目录,一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下。/dev:
设备文件,在这个目录中包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。/proc:
虚拟文件系统,提供关于系统内核和进程的信息。/sys:
包含与系统硬件相关的信息。/usr:
用户程序目录。/usr/bin 存放应用程序 /usr/share 存放共享数据 /usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件 /usr/local:存放软件升级包,用于存放本地安装的软件,通常由系统管理员手动安装的软件会被放置在这里。 /usr/share/doc: 系统说明文件存放目录 /usr/share/man: 程序说明文件存放目录
/root:
超级用户 root 的主目录。/lib 和 /lib64:
共享库文件,存放/bin 和/sbin 目录下的二进制文件需要的共享库文件和内核模块。/opt:
存放可选的应用程序包,通常由第三方软件安装。/mnt:
用于挂载临时文件系统,管理员可以手动挂载其他设备或分区到这个目录。
二、基本命令
1. 基本的命令格式
命令字 【命令选项】【命令参数】 命令选项: -xxx xxx是什么作用 命令参数: 路径,或者文件名 空格用来做分隔符
2. shutdown 关机命令
关闭系统使用Shutdown命令,确保用户和系统的资料完整。只有root用户才能使用这个命令。一般的用户是不允许执行这个命令的。
shutdown [选项] 时间 [消息] 选项:-r 表示重启-h表示系统服务停滞(halt)后,立刻关机 -f表示快速重启 时间: 为shutdown指定时间。 消息:表示系统的广播信息
3. pwd 当前工作目录
显示当前工作目录
pwd [选项] [文件或目录] 选项: 无 文件或目录: 无
4. ls 查看目录内容
执行ls指令可列出目录的内容,包括文件和子目录的名称。
ls [选项] [文件或目录] 选项:-l : 每列仅显示一个文件或目录名称。 -a 或--all : 下所有文件和目录。 -i 或--inode: 显示文件和目录的inode编号。 文件或目录:制定的目录或这文件,如果没有这一项,默认当前目录。
ls -l 以列的方式显示
ls -a 显示所有包括隐藏目录
ls -all
5. cd 改变工作目录
在不同的目录间切换,但该用户必须拥有足够的权限进入目的目录
cd [选项] [文件或目录] 选项: 无 文件或目录: 绝对路径:一定由根目录 / 写起 相对路径:相对于某一路径,其中.代表当前目录,..代表上一级目录 ~:表示家目录
cd /home 到home目录下
- 切换到上一级目录
cd ..
到当前用户的家目录
cd ~
6. uname 显示系统重要信息
会显示出关于系统的重要信息,如内核名称,主机 名,内核版本,处理机类型等
uname [选项] [文件或目录] 选项: -r:内核版本 -n: 主机名 -a: 所有信息 文件或目录: 无 备注: 查看发行版的版本 cat /etc/redhat-release
uname -a 显示所有系统重要信息
uname -r 内核版本
uname -n 主机名
7. touch 改变文件的时间(创建文件)
使用touch指令可更改文件或目录的日期时间,包括存取时间和更改时间。注意的是如果文件不存在则创建文件。
touch [选项] [文件或目录] 选项: -t:使用指定的时间,而非现在的时间 文件或目录: 要改变的文件的路径。
- 在当前文件夹创建文件
- 在指定文件夹创建文件
- 创建多个文件
8. mkdir 创建目录
创建目录
mkdir [选项] [文件或目录] 选项: -p:递归创建目录,嵌套目录 文件或目录: 跟目录的路径 注意:文件名大小写敏感,不可超过255字符, 不可以使用/,建议不要~ \ < > ( ) $ * ? " '
- 在当前文件夹创建目录
mkdir dir1
- 在当前文件夹创建多个目录
mkdir dir2 dir3
- 在指定文件夹创建目录
mkdir /home/dir4
- 创建一个嵌套的目录
mkdir aa/bb/cc/dd/ee
9. cp 拷贝文件或目录
将文件和目录从一个目录拷贝到另一个目录
cp [选项] [源文件或目录] [目的文件或目录] 选项: -i:在拷贝过程中询问是否要拷贝 -f:在拷贝过程中不询问直接拷贝 -r:拷贝目录中的所有文件和目录 文件或目录: 源文件或目录:指的是需要拷贝哪个文件的路径 目的文件或目录:指要把源文件或目录拷贝到哪里的路径
cp aaaa aa 将aaaa文件拷贝到aa文件夹
- cp 只能拷贝文件 加了 -r可以拷贝目录
cp -r dir1 dir2 aa 将dir1 dir2 拷贝到aa
10. rmdir 删除空目录
删除空的文件目录
rmdir [选项] [目录] 选项: -p:删除指定目录上的所有目录 文件或目录: 要删除的文件目录的路径
rmdir dir4 删除dir4空目录
- 不能删除文件
- 不能删除非空目录
11. rm 删除文件或目录
删除文件或目录,执行rm指令可删除文件或目录,如欲删除目录必须加上参数"-r",否则预设仅会删除文件。
rm [选项] [文件或目录] 选项: -i:删除时询问是否要删除 -f: 删除时不询问直接删除 -r: 递归删除目录下的所有文件或目录 文件或目录: 文件或目录:所要删除的文件或目录的路径
rm bbbb 删除bbbb文件
- 无法删除目录
rm aa 无法删除目录
rm -r aa 删除aa目录下的所有文件或目录 会询问是否删除
rm -rf aa 不询问直接删除
【注意】
- rm 危险命令
- 除了y之外的任何字母都表示不删
12. mv 移动或更名
可移动文件或目录,或是更改文件或目录的名称
mv [选项] [源文件或目录] [目标文件或目录] 选项: -i:在移动时有覆盖是询问是否要覆盖 -f: 在移动时有覆盖不询问直接覆盖 文件或目录: 源文件或目录:要移动或更名的文件或目录 目标文件或目录:如果有不是当前路径的路径 就是要移动,如果是当前路径下就是更名
mv q4567 /home/ 将q4567 移动到home下
mv aaaa aaaamv 将aaaa更名aaaamv
13. tar
是要是用来打包或这解包,压缩或这是解压缩的一 个命令,常常用作备份文件使用,或将许多文件打成一个包并压缩。
打包
tar [选项] [目标包名] [源文件或目录] 选项: -c:创建一个包 -f: 定义目标包 目标包名: 要打成的包名 源文件名或目录名: 哪些文件要被打成包
tar -cf dabaowenjian.tar ./* 将所有文件和文件夹打包
查看
tar [选项] [包名] 选项: -t:查看 包 里面的文件! -f: 定义目标包 目标包名: 查看xxx.tar 的包的路径
tar -tf /home/dabaowenjian.tar 将tar包打开
添加
tar [选项] [包名] [源文件或目录] 选项: -r:将文件追加到包中 -f: 定义目标包 包名: 查看xxx.tar 的包的路径 源文件或目录: 要添加的文件或这目录
tar -rf dabaowenjian.tar zkt.txt 追加zkt.txt文件
解包
tar [选项] [包名] 选项: -x:将包 解包 -f: 定义目标包 包名: 查看xxx.tar 的包的路径
tar -xf /home/dabaowenjian.tar 解包
压缩
tar [选项] [压缩名] [源文件] 选项: -c:打包 -z:将打包的文件用gzip格式压缩 -v:显示过程- f: 定义目标包 压缩名: 指定压缩的名字 源文件: 要打包压缩的文件
tar -czf /home/dabaowenjian.tar.gz ./* 压缩
解压缩
tar [选项] [包名] 选项: -x: 解包解压 -z:以gzip的格式进行解压 -v:显示过程 -f: 定义目标包 包名: 查看xxx.tar 的包的路径
tar -xzf /home/dabaowenjian.tar.gz 解压缩
14. man手册
是Linux下的帮助指令,通过man指令可以查看 Linux中的指令帮助、配置文件帮助和编程帮助等信 息。
man [选项] 命令名 选项: -a:在所有的man帮助手册中搜索; -f:等价于whatis指令,显示给定关键字的简短描述信 息;
man ls 通过man手册查看ls
按q退出 linux
man man 查看用户命令 man 的帮助手册。