大数据入门学习(Linux)

一、计算机入门知识介绍

1、计算机原理

1.1、冯·诺伊曼结构

核心思想:将程序和数据都存放在计算机中,按存储器的存储程序首地址执行程序的第一条指令,然后进行数据的处理计算。

1.2、五大基本部件(主要指硬件)

运算器和控制器组成CPU

  • 运算器
  • 控制器
  • 储存器:内存(临时存放)、硬盘(持久存储)
  • 输入设备:鼠标、键盘
  • 输出设备

2、软件和硬件概述

计算机由硬件和软件组成

2.1、硬件

2.2、软件

计算机的软件包括操作系统、系统软件和应用软件

  • 操作系统
    • Linux
    • Windows
    • Unix
    • Mac
  • 系统软件
    • 设备驱动程序
    • 图形包
    • 程序语言和开发环境
    • 数据库
    • 数学软件包
  • 应用软件
    • 公文制作
    • 科学数值计算
    • 财务会计
    • 信息检索
    • 数据管理
    • 文件压缩与解压缩
    • 互联软件
    • 网页制作
    • 游戏软件
    • 绘图软件
    • 幻灯演示

3、操作系统概述

3.1、概念

操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。

3.2、作用

OS作为计算机系统资源的管理者,主要由以下作用:

  • 管理处理器,用于分配和控制处理器
    • 例如:进程调度
  • 管理存储器,主要负责内存的分配与回收
  • 管理I/O设备,负责I/O设备的分配与操纵
  • 管理文件,负责文件的存取、共享和保护

二、Linux系统概述

1、Linux发行版

  • redhat:全球最大Linux发行商,功能全面,稳定,被IBM收购
  • ubuntu:系统桌面做的最好的
  • centerOS:免费的redhat,已经被redhat收购,依然免费
  • deepin:国内最好的一款Linux发行版

2、虚拟机介绍

2.1、概念

虚拟机(Virtual Machine)通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统。

2.2、常用虚拟机软件:

  • VMware
  • VirtualBox

3、Linux远程连接工具

  • Putty
  • XShell
  • FinalShell

4、Linux操作命令

4.1、目录结构

Linux目录结构是一个树形结构

Windows系统可以拥有多个盘符,如C盘、D盘等

Linux没有盘符这个概念,只有一个根目录 /,所有文件都在它下边

4.2、常见目录介绍

  • /bin:二进制命令所在目录
  • /boot:系统引导程序所需要的文件目录
  • /dev:设备软件目录,磁盘。光驱
  • /etc:系统配置,启动程序
  • /home:普通用户的家,目录默认数据存放目录
  • /lib:共享库文件和内核模块存放目录
  • /mnt:临时挂载储存设备的挂载点
  • /opt:额外的应用软件包
  • /proc:操作系统运行时,进程信息和内核信息存放在这里
  • /root:Linux超级权限用户root的家目录
  • /sbin:和管理系统相关的命令【超级管理员用】
  • /tmp:临时文件目录,这个目录被当作回收站使用
  • /usr:用户或系统软件应用程序目录
  • /var:存放系统日志的目录

4.3、学习终端技巧

  • Linux发行版本的命令大概200多个,但是常用的只有10多个而已
  • 不需要死记硬背,对于常用命令,用的多,自然记住
  • 不要尝试一次学会所有命令,有些命令是非常不常用的。遇到时,查找资料即可。

4.4、终端命令格式

command [-options] [parameter]
# command:命令名,相应功能的英文单词或单词缩写
# [-options]:选项,可用来对命令进行控制,也可以省略
# [parameter]:传给命令的参数,可以是零个、一个或多个

4.5、显示文件列表命令

# 查看当前目录内容(不包括:隐藏文件)
ls
# 查看当前目录内容(包括:隐藏文件)
ls -a
# 查看目录内容详细信息(查看文件类型、权限、大小等)
ls -al
# 查看目录内容详细信息,以K,M,G方式显示文件大小
ls -lh
# 查看root目录下内容
ls /root

4.6、清屏

# 快捷键 ctrl + L
clear

4.7、查看当前所在的路径

pwd

4.8、创建目录

mkdir mydir # 当前目录创建目录
mkdir -p aaa/bbb/ccc # 当前目录一次创建多层目录

4.9、删除命令

rm -rf test.txt # 删除文件(强删)
rm -rf mydir # 删除目录(强删)

4.10、切换目录

cd # 直接进入/root目录
cd mydir # 进入目录
cd .. # 返回上一级目录
cd ../..
cd /var/log # 进入/var/log(绝对路径)

4.11、文件操作命令

touch a.txt b.txt c.txt # 当前目录创建文件
touch /home/a.txt # 绝对路径创建

4.12、移动文件/目录(重命名)

# 移动文件
mv 文件名 目录名
# 移动目录
mv 目录1 目录2
# 文件重命名
mv a.txt b.txt
# 目录重命名(目录2如果存在,则是移动到目录2下)
mv 目录1 目录2

4.13、cat命令

cat 路径

4.14、复制

# 将文件复制到目录下
cp 文件 目录
# 将a.txt复制到b.txt
cp a.txt b.txt

4.15、压缩命令

# 将文件解压到当前目录
tar -zxvf redis.tar.gz
# 将文件解压到指定目录
tar -zxvf redis.tar.gz -C /root/dir

4.16、解压命令

# 打包
tar -cvf test.tar /root/test
# 打包并压缩
tar -czvf test.tar.gz /root/test
# zip格式
zip -r mysql-connector.zip mysql-connector/

4.17、文件查找命令

find(查找符合条件的文件)
# 查找根目录(/)下以文件名ins开头的文件
find / -name 'ins*'
# 查找根目录(/)下以.txt结尾的文件
find / -name '*.txt'
# 查找根目录(/)下包含'of'的文件
find / -name '*of*'
# 查找根目录(/)下文件大小大于100M的文件
find / -type f -size +100M
grep(可以对文本进行查询)
# 在文件中查找lang
grep lang anaconda-ks.cfg
# 在文件中查找a,高亮显示
grep a anaconda-ks.cfg --color
which(查看可执行文件的位置)
which 查看可执行文件的位置

4.18、系统管理命令

ps(列出系统中当前运行的那些进程)
ps -ef # 查看所有进程
kill(终止执行中的程序)
kill -9 12345 # 杀死pid=12345的进程
管道命令(前边命令的输入作为后边命令的输入)
ps -ef | grep java # 查询名称中包含java的进程
ll | grep dir # 查找当前目录中dir相关的文件或者目录

4.19、用户相关命令

用户创建和密码设置
useradd zhangsan # 创建新用户zhangsan
passwd zhangsan # 设置用户zhangsan的密码为zhangsan
用户删除
userdel -r zhangsan

4.20、权限管理命令

  • 所属用户:文件所属用户(文件创建者)
  • 所属用户组:文件所属用户所在的用户组
  • 其他用户:既不是所属用户也不是所属用户的用户组内的用户,就是其他用户
d rwx rwx rwx
d:代表是不是目录
r:可读 w:可写 x;执行
第一组rwx:对应的所属用户权限
第二组rwx:对应所属用户组权限
第三组rwx:其他用户权限

- rw- r-- r--
第一个 '-':文件
rw-:表示只有读写
r--:只读
r--:只读
属主(user) u 属组(group) g 其他用户(other) o
rwx rwx rwx
421 421 421
chmod
# 查看a.txt文件详情,这里主要查看权限
ll a.txt	# -rw-r--r--
# 修改权限
chmod u+x a.txt # "+"号赋予a.txt属主(u)可执行权限(x) -rwxr--r--
chmod u-x a.txt # "-"减去a.txt属主(u)可执行权限(x) -rw-r--r--
chmod u=x a.txt # "="号,不管以前什么权限,现在只给可执行权限 ---xr--r--

chmod +x a.txt # 不加u g o,表示所有用户。 -rwxr-xr-x

chmod 666 a.txt
第一个6:4+2 所属用户rw
第二个6:4+2 所属用户组rw
第三个6:4+2 其他用户rw
结果:-rw-rw-rw-

# 满权限
chmod 777 a.txt
# 默认权限 644

4.21、网络和服务管理命令

hostname(查看主机名)
hostname
ifconfig(查看IP地址)
ifconfig
  • 拓展
    • A类IP
      • 188.xxx.xxx.xxx。第一个组合固定,其他三个组合都是1~255随意组合
      • 子网掩码:255.0.0.0
    • B类IP
      • 188.188.xxx.xxx。前两个组合固定,后两个组合都是1~255随意组合
      • 子网掩码:255.255.0.0
    • C类IP
      • 192.168.88.xxx。前三个组合固定,最后一个组合是2~254随意组合
      • 子网掩码:255.255.255.0
service(控制系统服务的实用工具)

可以启动,停止,重新启动和关闭系统服务,还可以显示所有系统服务的当前状态

service network status # 查看网络服务状态
service network stop # 停止网络服务
service network start # 启动网络服务
service network restart # 重启网络服务

4.22、其他命令

ln(创建软连接)

类似创建快捷方式

ln [参数] [源文件或目录] [目标文件或目录]

ln -s 2.txt 1.txt # -s 软连接(不加则是硬链接)

lrwxrwxrwx # l 快捷方式
clear(清屏)
上下方向建/history(查看历史命令)

5、VI编辑器

5.1、特点
  • 只能编辑文本内容,不能对字体段落进行排版
  • 不支持鼠标操作
  • 没有菜单
  • 只有命令
5.2、使用
vi a.txt # 打开文件
vi a.txt +10 # 打开文件,定位到第10行
vim a.txt # vi的增强
  • 命令行模式

    • 不能输入文字,只能输入命令
    • 复制:yy
    • 复制N行:2yy
    • 粘贴:p
    • 撤销:u
    • 删除1行:dd
    • 删除多行 2dd
    • 回到文件顶部:gg
    • 回到文件末尾:G
    • 查找字符串:/str
  • 编辑模式

    • i:当前光标输入
    • o:当前光标多出下行
    • O:当前光标多出上行
  • 底行模式

    • 编辑模式下,ESC键
    • 保存退出::wq :x shift+z+z
    • 强制保存退出::wq!
    • 未修改退出::q
    • 不保存退出::q!
    • 保存不退出::w
    • 设置行号::set number
    • 将光标定位到123行::123
    • 替换::%s/旧文本/新文本/g

本文内容学习自 8天零基础入门大数据

原文地址:https://www.cnblogs.com/luckyzs/p/13435957.html