Linux 基础

本文介绍了Linux的基本概念,包括其开源特性、主要发行版和应用领域。深入讲解了Unix的演化历程,以及Linux目录结构和其重要性。详细阐述了常用命令如ls、cd、mkdir、rm、touch、cp、tar、find、grep、which、whoami和下载命令。此外,还涉及vi和vim编辑器的基础使用,以及权限管理和文件操作技巧。
摘要由CSDN通过智能技术生成

第一章 Linux基础篇 Linux入门

Linux介绍

Linux的读法 [李纽克斯 利尼克斯]

Linux特点: 免费,开源,安全,高效稳定,处理高并发强悍

创始人: 林纳斯-托瓦斯

吉祥物:企鹅

主要的发行版: centos ubuntu redhat 红旗 U麒麟 deepin

目前主要的操作系统有

Windows Linux Mac 安卓 苹果 车载系统

Unix的演化

Unix产生在贝尔实验室 又凯-汤姆逊和詹姆斯-古道为玩游戏用B语言二次开发

后来又用C语言重新编译了系统.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux特点和缺点

  • 特点:Linux是一种自由和开放源码的类UNIX操作系统。它能运行主要的Unix工具软件、应用程序和网络协议,支持32位和64位硬件。并且开源就大部分软件免费,内核可定制。
  • 缺点:对一些机器的兼容性差,软件教少
    由于它的特点被运用于 服务器操作系统,嵌入式操作系统,移动设备操作系统 特别广泛。

虚拟机安装

见安装文档 Linux安装

第二章 Linux目录介绍

目录作用
/bin二进制命令所在的目录
/boot系统引导程序所需要的文件目录
/dev设备软件目录,磁盘,光驱,
/etc系统配置,启动程序
/home普通用户的家,目录默认数据存放目录
/lib共享库文件和内核模块存放目录
/mnt临时挂载储存设备的挂载点
/opt额外的应用软件包
/proc操作系统运行时,进程信息和内核信息存放在这里
/rootLinux超级权限用户root的家目录
/sbin和管理系统相关的命令,【超级管理员用】
/tmp临时文件目录,这个目录被当作回收站使用
/usr用户或系统软件应用程序目录
/var存放系统日志的目录
[root@node01 ~]# cd /
[root@node01 /]# ll
total 24
# 是binary的缩写这个目录存放着最长使用的指令
lrwxrwxrwx.   1 root root    7 二月 26 18:56 bin -> usr/bin
# 存放Linux启动时使用的一些核心文件包括镜像
dr-xr-xr-x.   5 root root 4096 二月 26 19:04 boot
# 类似于Windows的设备管理器,把所有硬件以文件形式储存
drwxr-xr-x.  20 root root 3320 二月 26 19:07 dev
# 系统配置,启动程序
drwxr-xr-x. 132 root root 8192 二月 26 19:07 etc
# 普通用户的家,目录默认数据存放目录
drwxr-xr-x.   3 root root   16 二月 26 19:02 home
# 共享库文件和内核模块存放目录
lrwxrwxrwx.   1 root root    7 二月 26 18:56 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 二月 26 18:56 lib64 -> usr/lib64
drwxr-xr-x.   2 root root    6 十一  5  2016 media
# 临时挂载储存设备的挂载点
drwxr-xr-x.   2 root root    6 十一  5  2016 mnt
# 额外的应用软件包
drwxr-xr-x.   3 root root   16 二月 26 19:00 opt
# 操作系统运行时,进程信息和内核信息存放在这里 
dr-xr-xr-x. 230 root root    0 二月 26 19:07 proc
# Linux超级权限用户root的家目录
dr-xr-x---.  14 root root 4096 二月 26 19:10 root
drwxr-xr-x.  39 root root 1220 二月 26 19:10 run
# 和管理系统相关的命令,【超级管理员用】
lrwxrwxrwx.   1 root root    8 二月 26 18:56 sbin -> usr/sbin
drwxr-xr-x.   2 root root    6 十一  5  2016 srv
dr-xr-xr-x.  13 root root    0 二月 26 19:07 sys
# 临时文件目录,这个目录被当作回收站使用
drwxrwxrwt.  18 root root 4096 二月 26 20:17 tmp
# 用户或系统软件应用程序目录
drwxr-xr-x.  13 root root  155 二月 26 18:56 usr
# 存放系统日志的目录
drwxr-xr-x.  20 root root  282 二月 26 19:04 var

4.1 Linux 目录总结一下

  1. linux 的目录中有且只要一个根目录 /

  2. linux 的各个目录存放的内容是规划好,不用乱放文件。

  3. linux 是以文件的形式管理我们的设备,因此 linux 系统,一切皆为文件。

  4. linux 的各个文件目录下存放什么内容,大家必须有一个认识。

  5. linux 目录是一颗树

4.2 学习Linux终端命令的原因

  • Linux刚面世时并没有图形界面, 所有的操作全靠命令完成, 如 磁盘操作、文件存取、目录操作、进程管理、文件权限 设定等

  • 在职场中,大量的服务器维护工作都是在远程通过SSH客户端 来完成的, 并没有图形界面, 所有的维护工作都需要通过命令来完成

第三章 Linux命令

ls 命令

参数含义
ls -a显示指定目录下所有子目录与文件,包括隐藏文件
ls -l以列表方式显示文件的详细信息
ls -h配合 -l 以人性化的方式显示文件大小
llls -l 的缩写

cd命令

命令含义
cd切换到当前用户的主目录(/home/用户目录)
cd ~切换到当前用户的主目录(/home/用户目录)
cd .保持在当前目录不变
cd ..切换到上级目录
cd -可以在最近两次工作目录之间来回切换

相对路径和绝对路径

  • 相对路径 在输入路径时,最前面不是 / 或者 ~,表示相对 当前目录 所在的目录位置
  • 绝对路径 在输入路径时,最前面是 / 或者 ~,表示从 根目录/家目录 开始的具体目录位置

mkdir

命令含义
mkdir test创建目录
mkdir -p /root/aaa/bbb递归创建

rm命令

命令含义
rm -r test递归地删除目录下的内容, 删除目录时必须加此参数
rm -fr test直接删除目录(不管有没有内容)

touch命令

命令含义
touch a.txt在当前目录创建a.txt文件
touch /root/a.txt在/root目录创建a.txt文件

mv命令

命令含义
mv a.tx dir/将文件移动另一个目录中
mv a.txt b.txt重命名文件
mv dir1 dir2重命名目录

cp命令

命令含义
cp a.txt dir1将a.txt复制到dir1目录
cp a.txt b.txt将a.txt复制为b.txt

压缩和解压命令

参数解释
-c创建一个新tar文件
-v显示运行过程的信息
-f指定文件名
-z调用gzip压缩命令进行压缩
-t查看压缩文件的内容
-x解开tar文件
命令含义
tar -zxvf redis-3.2.8.tar.gz将文件解压到当前目录
tar -zxvf redis-3.2.8.tar.gz -C /root/dir将文件解压到指定目录
tar -cvf test.tar /root/test打包
tar -czvf test.tar.gz /root/test打包并压缩

find指令

命令含义
find / -name ‘ins*’查找/目录下以文件名ins开头的文件
find / -type f -size +100M查找/目录下文件大小大于100M的文件

grep命令

命令含义
grep a anaconda-ks.cfg在文件中查找a
grep a anaconda-ks.cfg --color在文件中查找a,高亮显示

which命令

命令含义
which pwd查找pwd命令的路径

whoami命令

命令含义
whoami返回当前用户
who am i返回当前用户详细显示

下载命令

命令含义
wget http://download.redis.io/releases/redis-4.0.2.tar.gz进行相关文件的下载

系统管理命令

命令含义
ps -ef查看所有进程
kill -9 12345杀死pid为12345的进程

管道命令

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。

命令含义
ps -ef | grep java查询名称中包含java的进程

用户管理

命令含义
useradd wp创建新用户itheima
passwd 123456设置用户itheima密码
userdel -r wp删除用户itheima

权限管理

  • 文件权限概述

Linux操作系统是多任务多用户操作系统,每当我们使用用户名登录操作系统时,Linux都会对该用户进行认证、授权审计等操作。操作系统为了识别每个用户,会给每个用户定义一个ID,就是UID。用户组就相当于多个用户的容器;在Linux系统中,用户组也有一个ID,GID。
在Linux操作系统中,root的权限是最高的,相当于windows的administrator,拥有最高权限,能执行任何命令和操作,而其他用户都是普通用户。
Linux对文件创建者(所属用户),所属用户组,其他用户都赋予不同的权限。

在这里插入图片描述
在这里插入图片描述
r: 对文件是指可读取内容 对目录是可以ls
w: 对文件是指可修改文件内容,对目录 是指可以在其中创建或删除子节点(目录或文件)
x: 对文件是指是否可以运行这个文件,对目录是指是否可以cd进入这个目录.chmod命令

chmod命令用来变更文件或目录的权限。

chmod 666 a.txt 
chmod u+x a.txt
chmod u=rwx,g=rw,o=x a.txt

ln命令

ln命令可以用来创建软连接,类似于创建快捷方式
命令格式:
ln [参数][源文件或目录][目标文件或目录]

实例:

ln -s 2.txt 1.txt 

clear命令

清屏命令,还可以使用快捷方式:ctrl + l

第四章vi 和 vim 编辑器

1. vi编辑器的三种模式

在这里插入图片描述

入门案例

## 在root用户的家目录查看当前目录下的文件和文件夹
[root@localhost ~]# ll
总用量 8
-rw-------. 1 root root 1326 2月  26 21:32 anaconda-ks.cfg
-rw-r--r--. 1 root root 1374 2月  26 21:37 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 2月  26 21:37 公共
drwxr-xr-x. 2 root root    6 2月  26 21:37 模板
drwxr-xr-x. 2 root root    6 2月  26 21:37 视频
drwxr-xr-x. 2 root root    6 2月  26 21:37 图片
drwxr-xr-x. 2 root root    6 2月  26 21:37 文档
drwxr-xr-x. 2 root root    6 2月  26 21:37 下载
drwxr-xr-x. 2 root root    6 2月  26 21:37 音乐
drwxr-xr-x. 2 root root    6 2月  26 21:37 桌面
# 进入桌面这个文件夹下
[root@localhost ~]# cd 桌面
# 使用vim编辑器编辑一个叫HelloWorld.java
[root@localhost 桌面]# vim HelloWorld.java

#输入i进入编辑模式
public class HelloWorld{
        public void main(String[],args){
                Systom.out.println("Hello World");
        }
}
~                                                                               
~                                                                               
~                                                                                       # 输入Esc退出编辑模式
进入:模式保存并退出
:wq 

vim复制黏贴

#yy复制当前行
public class HelloWorld{
#p粘贴当前行
#5yy复制光标及以下5行
public class HelloWorld{
        public void main(String[],args){
                Systom.out.println("Hello World");
        }
}
#黏贴
public class HelloWorld{
        public void main(String[],args){
                Systom.out.println("Hello World");
        }
}
命令功能
o在当前行后面插入一空行
O在当前行前面插入一空行
dd删除光标所在行
ndd从光标位置向下连续删除 n 行
yy复制光标所在行
nyy从光标位置向下连续复制n行
p粘贴
u撤销上一次命令
gg回到文件顶部
G回到文件末尾
/str查找str

vim删除

public class HelloWorld{
public class HelloWorld{
        public void main(String[],args){
                Systom.out.println("Hello World");
        }
#dd删除当前行
public class HelloWorld{
        public void main(String[],args){
                #x删除当前字母
                ystom.out.println("Hello World");
 #2dd 删除下面两行
 

vim插入

o	在当前行后面插入一空行
O	在当前行前面插入一空行
i   在当前行插入
命令功能
:w 文件另存为
:w保存(ctrl + s)
:q退出, 如果没有保存,不允许退出
:q!强行退出, 不保存退出
:wq保存并退出
:x保存并退出
:set nu设置行号
:%s/旧文本/新文本/g文本替换

移动光标的方法

命令功能
h 或 向左箭头键(←)光标向左移动一个字符
j 或 向下箭头键(↓)光标向下移动一个字符
k 或 向上箭头键(↑)光标向上移动一个字符
l 或 向右箭头键(→)光标向右移动一个字符
  • 如果你将右手放在键盘上的话,你会发现 hjkl 是排列在一起的,因此可以使用这四个按钮来移动光标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 “30j” 或 “30↓” 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可!

阅读模式下

命令功能
[Ctrl] + [f]屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b]屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
[Ctrl] + [d]屏幕『向下』移动半页
[Ctrl] + [u]屏幕『向上』移动半页
+光标移动到非空格符的下一行
-光标移动到非空格符的上一行
n那个 n 表示『数字』,例如 20按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20 则光标会向后面移动 20 个字符距离。
0 或功能键[Home]这是数字『 0 』:移动到这一行的最前面字符处 (常用)
$ 或功能键[End]移动到这一行的最后面字符处(常用)
H光标移动到这个屏幕的最上方那一行的第一个字符
M光标移动到这个屏幕的中央那一行的第一个字符
L光标移动到这个屏幕的最下方那一行的第一个字符
G移动到这个档案的最后一行(常用)
nGn 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
gg移动到这个档案的第一行,相当于 1G 啊! (常用)
nn 为数字。光标向下移动 n 行(常用)

搜索替换

命令功能
/word向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
?word向光标之上寻找一个字符串名称为 word 的字符串。
n这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
N这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。

删除、复制与贴贴

命令功能
x, X在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
nxn 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
dd删除游标所在的那一整行(常用)
nddn 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)
d1G删除光标所在到第一行的所有数据
dG删除光标所在到最后一行的所有数据
d$删除游标所在处,到该行的最后一个字符
d0那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
yy复制游标所在的那一行(常用)
nyyn 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用)
y1G复制游标所在行到第一行的所有数据
yG复制游标所在行到最后一行的所有数据
y0复制光标所在的那个字符到该行行首的所有数据
y$复制光标所在的那个字符到该行行尾的所有数据
p, Pp 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! 举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢? 那么原本的第 20 行会被推到变成 30 行。 (常用)
J将光标所在行与下一行的数据结合成同一行
c重复删除多个数据,例如向下删除 10 行,[ 10cj ]
u复原前一个动作。(常用)
[Ctrl]+r重做上一个动作。(常用)
u与 [Ctrl]+r是很常用的指令!一个是复原,另一个则是重做一次~ 利用这两个功能按键,你的编辑,嘿嘿!很快乐的啦!
.不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了! (常用)

关机重启

shutdown
shutdown -h now : 表示立即关机shutdown -h 1 : 表示 1 分钟后关机shutdown -r now:  立即重启
halt
就是直接使用,效果等价于关机
reboot
就是重启系统。
syn  :	把内存的数据同步到磁盘

文件上传

第一种上传方式: 基于CRT 的 alt + p
在这里插入图片描述
在此窗口下, 可以通过cd 切换到想要上传的目录下

在这里插入图片描述
第二种上传方式: 使用linux的上传工具进行上传

  1. 安装上传工具 : 使用yum进行联网下载软件并安装
    yum -y install lrzsz
  2. 使用方式:
    2.1) 输入上传命令: rz 弹出上传框
    在这里插入图片描述
    2.2) 选择对应文件, 点击ok进行上传

上传后文件存储在什么位置上?
答: 在那个目录下输入的rz, 就会将文件存储到那个目录下
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值