大数据之-linux知识

1.学习终端命令的技巧:

不需要死记硬背,对于常用的命令,用的多了,自然就己住了

不要尝试一次学会所有的命令,有些命令是非常不常用的,临时遇到,临时百度既可以

2.常用Linux命令的基本使用

序号

命令

对应英文

作用

01

ls

list

查看当前文件夹下的内容,可以配合ls -lh查看详细信息

02

pwd

print work directory

查看当前所在文件夹

03

cd [目录名]

change directory

切换文件夹

04

touch [文件名]

touch

如果文件不存在,新建文件,文件存在会修改文件的未次修改日期

05

mkdir [目录名]

make directory

创建目录

06

rm [文件名]

remove

删除指定的文件名,使用rm命令时,要小心,因为文件删除后是不能恢复的, -f 强制删除,忽略不存在的文件,无需提示。

-r 递归地删除目录下的内容,删除文件夹时,必须加此参数

07

clear

clear

清屏

3.Liux终端命令格式

目标

    • 了解终端命令格式
    • 知道如何查阅终端命令帮助信息

01.终端命令格式

command [-options] [parameter]

说明:

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

[ ]代表可选

1.1命令帮助

1>自动补全

在敲出文件/目录/命令 的前几个字母后,按tab 键

      • 如果输入没有歧义,系统会自动补全
      • 如果还存在其他 文件/目录/命令,再按一下tab 键,系统会提示可能存在的 命令

2>曾经使用过的命令

按上/下 光标键可以在曾经使用过的命令之间来回的切换

如果想要退出选择,并且不想执行当中选中的命令,可以按CRTL+C

1.2 ls命令说明

  • ls 是引文单词list的简写,其功能是为了列出目录的内容,是用户最常用的命令之一,类似于DOS下的dir命令

Linux下文件和目录的特点

  • linux文件或者目录名称最长的可以有256个字符
  • 以. 开头的文件为隐藏文件,需要用-a 参数才能显示
  • .代表当前目录
  • ..代表上一级目录

1.3 ls 常用选项

参数

含义

-a

显示指定目录下所有子目录与文件,包括隐藏文件

-l

以列表的方式显示文件的详细信息

-h

配合-l 以人性化的方式显示文件大小

1.4 ls通配符的使用

通配符

含义

.

代表任意个数个字符

代表任意一个字符,至少1个

[]

表示可以匹配字符组中任 一 一个

[abc]

匹配a ,b, c中任意一个

[a-f]

匹配从a 到 f范围内的任意一个字符

1.5切换目录

cd是英文单词change directory 的简写,其功能为更改当前的工作目录,也是用户最常用的命令之一

注意:Linux所有的目录和文件名都是大小写敏感的

命令

含义

cd

切换到当前用户的主目录(/home/用户目录)

cd ~

切换到当前用户的主目录(/home/用户目录)

cd .

保持在当前目录不变

cd ..

切换到上级目录

cd -

可以在最近两次工作目录之间来回切换

1.5 相对路径与绝对路径

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

02.查阅命令帮助信息(知道)

提示

  • 现阶段只需要通过以下两种方式可以查询命的帮助信息
  • 先学习常用命令以及常用选项的使用即可,工作中如果遇到问题可以借助 网络搜索

2.1 --help

command --help

说明:

  • 显示command命令的帮助信息

2.2 man

man command

说明:

  • 查阅 command 命令的使用手册

使用man时的操作键:

操作键

功能

空格键

显示手册页的下一屏

Enter键

一次滚动手册页的一行

b

回滚一屏

f

前滚一屏

q

退出

##2022/06/16 学习到P29

我是一级标题

  1. 数字.加空格就是有序列表
  • 加号 空格就是无需列表

加粗字体用俩个 **加粗 “加粗”或者ctrl+b

我是一段说明

用> 加空格

超链接

[百度] (http://www.baidu.com)

二。安装虚拟机

2.创建虚拟机

1.打开VM

磁盘空间,根据自己电脑磁盘空间大小合理划分,后续如果用到大数据相关的软件这个磁盘空间是不够的。需要加到100G

3.安装操作系统

1.在CD/DVD里的设备里选择iso镜像文件,这里我们选择的是minimal.iso

1.配置好镜像后,点击启动虚拟机

2.选择第一个,跳过硬盘检查,进入到设置系统语言 键盘语言 均选择English ,下一步选择时区,选择亚洲上海,给磁盘分区:

1. 分为/boot 引导程序区,选择ext4 20M 注如果安装的是centos7  默认的文件系统从ext4改成了xfs

.2,创建交换区swap 依然是20M.

3.创建用户区,选择/ ,ext4 ,大小选择剩余磁盘大小

4.配置虚拟环境的网络

配置虚拟环境的网络:

1.找到网卡位置

2.配置协议

4.1找到网卡位置:

linux系统的网卡位置在 etc/sysconfig/network-scripts/

4.2配置协议:

(1)删除网卡物理地址+UUID (方便后期克隆虚拟机,不至于多个虚拟机之间有相同的网卡物理地址,防止出现网络问题)

(2)设置: IPADDR NETMASK GETEWAY (有多个DNS虚拟机就配置多个DNS服务) DNS1 DNS2

(3) 重启网络服务 这样你修改的配置信息才生效

(4)测试: ping www.baidu.com

cd /etc/sysconfig/network-scripts/ #切换目录 ls #显示文件 vi ifcfg-eth0 #编辑该文件 #### ifcfg-eth0的内容 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR= 192.168.70.66 #ip地址 NETMASK=255.255.255.0 #子网掩码 GATEWAY=192.168.70.2 #网关 DNS1=114.114.114.114 #114为通用DNS DNS2=192.168.70.2 #可以把网关地址设置成DNS #### ## 设置好了后要重启服务才生效 service network restart #检查你设置的配置 ifconfig #可以尝试ping 外网看是否能ping 痛 ping www.baidu.com

ip地址要在编辑的虚拟网络编辑器里,用管理员账号查看

注:vm提供了三种网络连接模式:

1.桥接模式: 虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用,这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的。

2.NAT模式:虚拟机和主机构建一个专用网络,并通过虚拟机网络地址转换NAT设备对IP进行转换,虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟机。

3.仅主机模式

虚拟机只与主机共享一个专用网络,与外部网络无法通信

五。基于虚拟机的快照克隆多台虚拟机的方法

1.拍摄快照

2。基于已有快照进行克隆

3.克隆完成后,需要修改克隆完成后的这台机子的配置

3.1 修改IPADDR

#修改网络配置信息 cd /etc/sysconfig/network-scripts/ vi ifcfg-eth0

IPADDR= 192.168.74.68

3.2修改系统配置文件

cd /etc/sysconfig vi network

3.3修改HOSTNAME

HOSTNAME=node05

3.4删除一个文件

cat /etc/udev/rules.d/70-persistent-net.rules

rm -f /etc/udev/rules.d/70-persistent-net.rules

4.重启

reboot

网络重启

service network restart

六 xhell xftp工具

用于连接linux系统的工具

使用xshell 可以连接服务器

ssh root@ip

七 Linux 查看命令帮助文档

eg:man ifconfig

man 命令 #外部命令 help 命令 #内部命令

如果提升man命令不存在

使用 yum install man

八 bash shell 定义变量以及进程简单管理

echo #打印命令

echo "msb" a=1 echo $a #定义集合 arr1=(1 2 3) echo $arr1 #默认打印第一个元素 #打印集合的第二个元素 echo ${arr1[1]} #打印第三个元素 echo ${arr1[2]} #打印当前bash shell的进程号 echo $$ #查找进程号 ps -ef #杀掉进程 kill -9 进程号

九 hash优化命令查询时间

1.path 记录查询执行命令所在路径

2.hash 进一步优化

十 linux文件系统

linux系统没有盘符的说法,也是树状结构

cd / #进入根目录 #Linux系统不同的文件放在不同的目录下 ll # bin 存放的一般是可执行的文件或命令 都是用户命令 # sbin 一般存放的是管理相关的命令 # boot 系统启动相关文件,如内核 initrd 以及grub(bootloader) # dev 设备文件 # etc 配置文件 # home 用户的家目录,每个用户的家目录通常默认为/home/USERNAME # root 管理员的家目录 # lib 库文件 # media 挂载点目录,移动设备 # mnt 挂载点目录 额外的临时文件系统 # opt 可选目录 第三方程序安装目录 # proc 伪文件系统,内核映射文件 # sys 伪文件系统,跟硬件设备相关的属性映射文件 # tmp 临时文件 /var/tmp # var 可变化的文件

十一 文件系统相关命令

df 显示磁盘使用情况 可以加 -h

du 显示文件系统使用情况 可以加 -h 显示占用大小的单位

ls 显示目录

文件类型:

-:普通文件

d: 目录文件

b: 块设备文件

c: 字符设备文件

I:符号链接文件

p: 命令管道文件

s:套接字文件

文件权限: 9位,每三位一组,3组 每一组:rwx(读 写 执行)r--

文件硬链接的次数

文件的属主

文件的属组

文件大小 单位字节

时间戳:最近一次被修改的时间

pwd #查看当前目录 cd ~ #切换到家目录 cd ..#切换到上级目录 mkdir #创建目录 mkdir -p /a/dir/spp #使用-p命令,当上级目录不存在时,也可以创建 mkdir a/xdir a/ydir a/zdir #连续创建 cp /etc/profile . # 将profile拷贝到当前目录 mv 文件 新目录 #移动文件到新目录 mv profile profile.bak #重命名该文件

文件命令之---- rm ln软连接

rm #删除文件 eg: rm hello #删除文件,会询问是否真的删除 rm -f #强制删除 rm -r -f 目录 #删除目录 ln 源文件 目标文件 #软连接

文件命令之---- stat touch

stat 文件 # 查看文件详细信息 touch 文件 # 一致时间,创建新文本,再使用stat 命令 发现访问时间 修改时间 和改变时间变一致了

文件命令之-- cat more less head tail

cat 文件名 #查看文件内容,如果内容比较少,可以一屏显示可以使用cat 命令 more 文件名 #可以分页查看文件内容,使用空格,显示下一屏, 也可以使用回车 一行一行看,缺点:回看只能通过滑轮 less 文件名 # 全屏查看 ,使用空格查看下一页 ,按B查看上一页 head 文件名 #查看前十行,默认就是前十行 head -5 文件名 #查看前无行数据 tail 文件名 #查看后十行数据 tail -5 文件名 #查看后五行数据 tail -f 文件名 #查看增量数据

文本命令之---管道 |

cat zfg | head -3 # 输出 zfg文件内容 输入zfg文件的前三行

文本编辑器 Vi

正则表达式

定义:正则表达式是对字符串操作的一种逻辑公式,就是用实现定义好的一些特定字符,以及这些特定字符的组合组成一个规则字符串,这个规则字符串用来表达对字符串的一种过滤逻辑

正则表达式特定字符

匹配操作符:

\ 转义字符

. 匹配任意单个字符

[1249a] 匹配1 2 4 9 a 任意一个字符

[^12] 匹配任意一个非1非2的字符

[a-k] 匹配任意一个a到k的字符

^ 行首

$ 行尾

\ 单词首位边界

\ 表示abc这个单词绑定死了

| 链接操作符

(,) 选择操作符

\n 反向引用

重复操作符

? 匹配0到1次

* 匹配0到多次

+ 匹配1到多次

{n} 匹配n次

{n,} 匹配 n到多次

{n,m} 匹配n到m次

练习:有一个txt文本内容如下 hello msb hello anglebaby iiii250 wyf hello zhangxinyi 11 hel mhellosbjy io h2341123i bj iiiii521 fanbingbing 111 hello 222 wo ai bj tam 练习题目 1.查找包含hello的行 grep "hello" txt 2.查找包含数字的行找出来了 grep "[0-9]" txt 3.查找包含了2或者5的行 grep "[25]" txt 4.查找包含3位数的行 grep "[0-9]\{3\}" txt 或者 grep -E "[0-9]{3}" txt 5.包含hello这个单词的行找出来 grep "/<hello\>" txt 6.包含3位数字的行找出来 grep -E "([^0-9][0-9]|^[0-9])[0-9]([0-9][^0-9]|[0-9]$)" txt 7.找出hello为单词词首的行 grep -E "\<hello" txt 8.找出出现2-3次的行 grep -E "l{2,3}" txt 9.hi hello hi hello 这个结构的行 grep -E "hi.*hello.*hi.*hello.*" txt 可以简写 grep -E "(hi.*)(hello.*)*\1\2" 或者 grep -E "(hi.*)(hello.*).*\1.*\2" txt

文本命令之---cut sort wc

cut

# cut 显示切割的行数 # 参数:f 选择显示的列数 s 不显示没有分割符的行 d 自定义分割符 # 实例1: 显示txt文件 以空格隔开的第一列 第二列 第三列 cut -d '' -f1,2,3 txt #或者 cut -d '' -f1-3 txt #实例2 显示txt文件 以空格隔开的第一,二 三列,没有分隔符的就不显示 cut -d '' -f1-3 -s txt

sort

#sort 排序 # 参数 n 按照数字来排序 r 倒序 t 自定义分割符排序 k 选择排序列 u 合并相同行 f 忽略大小写

根据名字的字典序排列

根据名字的字典序列去重排列

根据名字的字典序并去重且忽略大小写排序

按照数值倒叙排列

wc

wc: 意思是world count 单词计数

wc means :print newline,world, and byte count for each file

sed行编辑器

sed [options] 'command' file ....

options:

-n 表示静默模式,不再默认显示模式空间中的内容

-i 表示直接修改原文件

-e SCRIPT 可以同时执行多个脚本

-f /PATH/TO/SEC_SCRIPT

-r 表示使用扩展正则表达式

command

d 删除符合条件的行

p 显示符合条件的行

a\String 在指定的行后面追加新行,内容为String

\n 可以于换行

i\string 在指定的行前面添加新行 内容为string

c 取代 ,c的后面可以接字串

s /pattern/string/修饰符 查找并替换,默认只替换每行中第一次被模式匹配到的字符串

g 行内全局替换

i 忽略字符大小写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值