大数据-1虚拟机配置

大数据---虚拟机配置

登录系统后

一、配置模型机

​ cd /etc/sysconfig/network-scripts目录
​ 修改文件ifcfg-eth0
​ vi ifcfg-eth0 接口配置-以太网

DEVICE=
HWADDR=网卡地址(不能相同)
TYPY=
UUID=
ONBOOT=
NM_CONTROLLED=
BOOTPROTO=

1、注释网卡地址
2、ONBOOT设置为yes
3、BOOTPROTO设置为static

​ 192.168.25.0 -192.168.25.255范围
​ 192.168.25.0网络号
​ 192.168.25.255广播
​ 192.168.25.2网关
​ 192.168.25.1主机ip

​ 可用ip范围 3-254
4、添加IP地址
​ IPADDR=192.168.25.240

5、网络掩码
​ NETMASK=255.255.255.0
6、网关
​ GATEWAY=192.168.25.2
7、DNS
​ DNS1=114.114.114.114
8、重启网络服务
​ service network restart
试着 ping www.baidu.com
若是没有解决问题:
​ 参考文章:
https://jingyan.baidu.com/article/4d58d54137d2a19dd5e9c050.html
注意:
[3选项on代表开机启动,off代表开机启动
​ 本机下面的VMware下面的几个服务一定要开启
​ 1、DHCP service
​ 2、NET service
​ 3、Workstations service

关闭防火墙和安全检查的一个模块

查询当前的Linux系统那些服务是关闭或者禁用的
​ chkconfig

1、关闭防火墙

[root@MgsLocalhostData /]# chkconfig 
auditd         	0:off	1:off	2:on	3:on	4:on	5:on	6:off
blk-availability	0:off	1:on	2:on	3:on	4:on	5:on	6:off
crond          	0:off	1:off	2:on	3:on	4:on	5:on	6:off
ip6tables      	0:off	1:off	2:on	3:on	4:on	5:on	6:off
iptables       	0:off	1:off	2:on	3:on	4:on	5:on	6:off
iscsi          	0:off	1:off	2:off	3:on	4:on	5:on	6:off
iscsid         	0:off	1:off	2:off	3:on	4:on	5:on	6:off
lvm2-monitor   	0:off	1:on	2:on	3:on	4:on	5:on	6:off
mdmonitor      	0:off	1:off	2:on	3:on	4:on	5:on	6:off
multipathd     	0:off	1:off	2:off	3:off	4:off	5:off	6:off
netconsole     	0:off	1:off	2:off	3:off	4:off	5:off	6:off
netfs          	0:off	1:off	2:off	3:on	4:on	5:on	6:off
network        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
postfix        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
rdisc          	0:off	1:off	2:off	3:off	4:off	5:off	6:off
restorecond    	0:off	1:off	2:off	3:off	4:off	5:off	6:off
rsyslog        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
saslauthd      	0:off	1:off	2:off	3:off	4:off	5:off	6:off
sshd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off
udev-post      	0:off	1:on	2:on	3:on	4:on	5:on	6:off

1、停止防火墙服务
service iptables stop
2、禁用防火墙
chkconfig iptables off

案例:

[root@MgsLocalhostData /]# chkconfig 
​......
​iptables       	0:off	1:off	2:on	3:on	4:on	5:on	6:off
​.....
​[root@MgsLocalhostData /]# service iptables stop
​iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
​iptables: Flushing firewall rules:                         [  OK  ]
​iptables: Unloading modules:                               [  OK  ]
​[root@MgsLocalhostData /]# chkconfig iptables off
​[root@MgsLocalhostData /]# chkconfig 
​......
​iptables       	0:off	1:off	2:off	3:off	4:off	5:off	6:off
​.....

3、系统安全方面的
​cd /etc/selinux
​vi config
​把SELINUX改成=desabled
​[root@MgsLocalhostData selinux]# cat config
​......

disabled - No SELinux policy is loaded.

​ SELINUX=disabled
​ ......
​ SELINUXTYPE=targeted
删除与网络物理地址的相关文件

	[root@MgsLocalhostData selinux]# cd /etc
​	[root@MgsLocalhostData etc]# cd udev
​	[root@MgsLocalhostData udev]# cd rules.d
​	[root@MgsLocalhostData rules.d]# ls -l
​	total 16
​	-rw-r--r--. 1 root root 316 Nov 22  2013 60-raw.rules
​	-rw-r--r--. 1 root root 789 Jul 19 23:40 70-persistent-cd.rules
​	-rw-r--r--. 1 root root 420 Jul 19 23:36 70-persistent-net.rules
​	-rw-r--r--. 1 root root  54 Dec  8  2011 99-fuse.rules
​	[root@MgsLocalhostData rules.d]# cat 70-persistent-net.rules

This file was automatically generated by the /lib/udev/write_net_rules

program, run by the persistent-net-generator.rules rules file.

​	#

You can modify it, as long as you keep each rule on a single

line, and change only the value of the NAME= key.

PCI device 0x8086:0x100f (e1000)

​	SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:d5:f3:c7", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
​	[root@MgsLocalhostData rules.d]# rm -f  /etc/udev/rules.d/70-persistent-net.rules
​	poweroff

二、得到的虚拟机作为模型机配置其他的主机
给虚拟机拍快照
通过快照克隆4台虚拟机

启动快照克隆的虚拟机,修改4台虚拟机的
1、IP地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
第一台IP 192.168.25.50,第二台IP 192.168.25.51,..
2、主机名
vi /etc/sysconfig/network
HOSTNAME = MDNode01
3、地址映射
vi /etc/hosts
192.168.25.50 MDNode01
192.168.25.51 MDNode02
192.168.25.52 MDNode03
192.168.25.53 MDNode04
4、在wind下面的hosts设置跟第三不一样的操作
5、检查5台设备之间的通信

常用的Linux命令

  1. ifconfig 查看当前的计算机网络配置

    [root@MDNode01 ~]# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0C:29:BF:3A:BE  
    		  inet addr:192.168.25.50  Bcast:192.168.25.255  Mask:255.255.255.0
    		  inet6 addr: fe80::20c:29ff:febf:3abe/64 Scope:Link
    		  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
    		  RX packets:212 errors:0 dropped:0 overruns:0 frame:0
    		  TX packets:92 errors:0 dropped:0 overruns:0 carrier:0
     	  collisions:0 txqueuelen:1000 
    		  RX bytes:19036 (18.5 KiB)  TX bytes:11912 (11.6 KiB)
    
    lo        Link encap:Local Loopback  
    		  inet addr:127.0.0.1  Mask:255.0.0.0
    		  inet6 addr: ::1/128 Scope:Host
    		  UP LOOPBACK RUNNING  MTU:16436  Metric:1
    		  RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    		  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
     	  collisions:0 txqueuelen:0 
    		  RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
    
  2. type ifconfig 可以查到命令程序的位置
    [root@MDNode01 ~]# type ifconfig
    ifconfig is hashed (/sbin/ifconfig)

  3. file ifconfig 查看命令的文件,ELF代表可执行文件,
    [root@MDNode01 sbin]# file ifconfig
    ifconfig: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

  4. echo打印变量或字符串
    [root@MDNode01 sbin]# echo $PATH
    /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

  5. yum 安装命令程序
    yum install man man-pages

  6. 通过man命令学习外部命令。
    man ifconfig

  7. help 来学习习内部命令,

    [root@MDNode01 /]# help
    GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
    These shell commands are defined internally.  Type `help' to see this list.
    Type `help name' to find out more about the function `name'.
    Use `info bash' to find out more about the shell in general.
    Use `man -k' or `info' to find out more about commands not in this list.
    
    A star (*) next to a name means that the command is disabled.
    
     job_spec [&]                                history [-c] [-d offset] [n] or history >
     (( expression ))                            if COMMANDS; then COMMANDS; [ elif COMMA>
     . filename [arguments]                      jobs [-lnprs] [jobspec ...] or jobs -x c>
     :                                           kill [-s sigspec | -n signum | -sigspec]>
     [ arg... ]                                  let arg [arg ...]
     [[ expression ]]                            local [option] name[=value] ...
     alias [-p] [name[=value] ... ]              logout [n]
     bg [job_spec ...]                           mapfile [-n count] [-O origin] [-s count>
     bind [-lpvsPVS] [-m keymap] [-f filename]>  popd [-n] [+N | -N]
     break [n]                                   printf [-v var] format [arguments]
     builtin [shell-builtin [arg ...]]           pushd [-n] [+N | -N | dir]
     caller [expr]                               pwd [-LP]
     case WORD in [PATTERN [| PATTERN]...) COM>  read [-ers] [-a array] [-d delim] [-i te>
     cd [-L|-P] [dir]                            readarray [-n count] [-O origin] [-s cou>
     command [-pVv] command [arg ...]            readonly [-af] [name[=value] ...] or rea>
     compgen [-abcdefgjksuv] [-o option]  [-A >  return [n]
     complete [-abcdefgjksuv] [-pr] [-DE] [-o >  select NAME [in WORDS ... ;] do COMMANDS>
     compopt [-o|+o option] [-DE] [name ...]     set [--abefhkmnptuvxBCHP] [-o option-nam>
     continue [n]                                shift [n]
     coproc [NAME] command [redirections]        shopt [-pqsu] [-o] [optname ...]
     declare [-aAfFilrtux] [-p] [name[=value] >  source filename [arguments]
     dirs [-clpv] [+N] [-N]                      suspend [-f]
     disown [-h] [-ar] [jobspec ...]             test [expr]
     echo [-neE] [arg ...]                       time [-p] pipeline
     enable [-a] [-dnps] [-f filename] [name .>  times
     eval [arg ...]                              trap [-lp] [[arg] signal_spec ...]
     exec [-cl] [-a name] [command [arguments >  true
     exit [n]                                    type [-afptP] name [name ...]
     export [-fn] [name[=value] ...] or export>  typeset [-aAfFilrtux] [-p] name[=value] >
     false                                       ulimit [-SHacdefilmnpqrstuvx] [limit]
     fc [-e ename] [-lnr] [first] [last] or fc>  umask [-p] [-S] [mode]
     fg [job_spec]                               unalias [-a] name [name ...]
     for NAME [in WORDS ... ] ; do COMMANDS; d>  unset [-f] [-v] [name ...]
     for (( exp1; exp2; exp3 )); do COMMANDS; >  until COMMANDS; do COMMANDS; done
     function name { COMMANDS ; } or name () {>  variables - Names and meanings of some s>
     getopts optstring name [arg]                wait [id]
     hash [-lr] [-p pathname] [-dt] [name ...]>  while COMMANDS; do COMMANDS; done
     help [-dms] [pattern ...]                   { COMMANDS ; }
    
    

sudoku

文件系统
df -h
显示计算机的盘符大小
[root@MDNode01 etc]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 195G 834M 184G 1% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 194M 28M 157M 15% /boot

[root@MDNode01 usr]# ls -l
total 60
dr-xr-xr-x.  2 root root 12288 Jul 20 18:05 bin
drwxr-xr-x.  2 root root  4096 Sep 23  2011 etc
drwxr-xr-x.  2 root root  4096 Sep 23  2011 games
drwxr-xr-x.  3 root root  4096 Jul 19 23:36 include
dr-xr-xr-x.  9 root root  4096 Jul 19 23:37 lib
dr-xr-xr-x. 24 root root 12288 Jul 20 18:05 lib64
drwxr-xr-x.  9 root root  4096 Jul 20 18:05 libexec
drwxr-xr-x. 12 root root  4096 Jul 19 23:36 local
dr-xr-xr-x.  2 root root  4096 Jul 20 18:05 sbin
drwxr-xr-x. 61 root root  4096 Jul 19 23:37 share
drwxr-xr-x.  4 root root  4096 Jul 19 23:36 src

lrwxrwxrwx.  1 root root    10 Jul 19 23:36 tmp -> ../var/tmp

查询当前目录下面的所有文件的大小

[root@MDNode01 usr]# du -sh ./*
19M		./bin
4.0K	./etc
4.0K	./games
40K		./include
98M		./lib
55M		./lib64
7.8M	./libexec
132K	./local
24M		./sbin
182M	./share
12K		./src
0		./tmp

查询文件的文件名

[root@MDNode01 dev]# ls -l /dev/
total 0
crw-rw---- 1 root video    10, 175 Jul 21 05:49 agpgart
.....
crw-rw-rw- 1 root root      1,   5 Jul 21 05:49 zero

c、c开始的代表的是可执行的设备文件

man read

file descriptor

描述文件的三种形式,

任何进程都有三个最基本的流

0 代表输入流

1 正确的输出流

2 出错的输出流

文件系统

[root@MDNode01 /]# ls -l
total 94
dr-xr-xr-x.  2 root root  4096 Jul 19 23:37 bin
dr-xr-xr-x.  5 root root  1024 Jul 19 23:38 boot
drwxr-xr-x  18 root root  3700 Aug  8 16:30 dev
drwxr-xr-x. 61 root root  4096 Aug  8 16:30 etc
drwxr-xr-x.  2 root root  4096 Sep 23  2011 home
dr-xr-xr-x.  8 root root  4096 Jul 19 23:37 lib
dr-xr-xr-x.  9 root root 12288 Jul 19 23:37 lib64
drwx------.  2 root root 16384 Jul 19 23:35 lost+found
drwxr-xr-x.  2 root root  4096 Sep 23  2011 media
drwxr-xr-x.  2 root root  4096 Sep 23  2011 mnt
drwxr-xr-x.  2 root root  4096 Sep 23  2011 opt
dr-xr-xr-x  84 root root     0 Aug  8 16:30 proc
dr-xr-x---.  2 root root  4096 Jul 20 02:21 root
dr-xr-xr-x.  2 root root 12288 Jul 19 23:37 sbin
drwxr-xr-x.  2 root root  4096 Jul 19 23:36 selinux
drwxr-xr-x.  2 root root  4096 Sep 23  2011 srv
drwxr-xr-x  13 root root     0 Aug  8 16:30 sys
drwxrwxrwt.  3 root root  4096 Aug  8 17:31 tmp
drwxr-xr-x. 13 root root  4096 Jul 19 23:36 usr
drwxr-xr-x. 17 root root  4096 Jul 19 23:36 var

bin和sbin是可执行文件目录(ELF和脚本)

root 管理员的家目录

media挂载点目录,移动设备

mnt挂载点,额外的临时文件系统

proc伪文件系统,内核映射文件

sys伪文件系统,跟硬件相关的属性映射文件

tmp临时文件

var可变化的文件/var./tmp

erc配置文件

lib和lib64二次开发库

boot引导目录

dev 在Linux中一切皆文件,把系统抽象成文件放在这个目录下面

home用户的家目录

var目录,程序执行产生的文件、数据和日志存放的地方

usr目录,安装程序的目录

opt目录 自定义安装程序的目录

[root@MDNode01 /]# du -sh ./*

查询当前的目录下面的目录占用的大小

文件类型

在ls -l命令下面、

第一个字代表文件类型

— 普通文件

b 字节流

c 字符流

d 目录

c、b 设备文件

l 链接

p、s 看不到的管道和网络

操作文件

cd - 上一个文件

深度床架文件 mkdir -p [目录名/目录名]

水平创建 mkdir [] [] [] 可以接受多个参数

​ 也可以这样创建 mkdir ./[目录]/{1,2,3}dir

rm 删除命令

rm -fr 强制删除

[root@MDNode01 ~]# ls -li
total 24
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog


11796491代表的是物理存储的索引号

ln软连接和硬链接
[root@MDNode01 ~]# vi a.txt
[root@MDNode01 ~]# cat a.txt
ls 展示当前的目录下面的文件
ls -li	详情的展示当前目录下面的文件的信息
pwd	展示现在所处的文件位置
touch	创建一个文件
clear	清除屏幕的信息
hop	展示当前系统的CPU运行的情况
[root@MDNode01 ~]# ll -li
total 28
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  1 root root  234 Aug  8 19:51 a.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# ln a.txt b.txt
[root@MDNode01 ~]# ll -li
total 32
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 a.txt
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 b.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# cat b.txt
ls 展示当前的目录下面的文件
ls -li	详情的展示当前目录下面的文件的信息
pwd	展示现在所处的文件位置
touch	创建一个文件
clear	清除屏幕的信息
hop	展示当前系统的CPU运行的情况
[root@MDNode01 ~]# 

创建出来的硬链接,删除原文件后,ln硬链接出来的文件是不会被影响的

[root@MDNode01 ~]# rm -f a.txt 
[root@MDNode01 ~]# ll -li
total 28
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  1 root root  234 Aug  8 19:51 b.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# cat b.txt
ls 展示当前的目录下面的文件
ls -li	详情的展示当前目录下面的文件的信息
pwd	展示现在所处的文件位置
touch	创建一个文件
clear	清除屏幕的信息
hop	展示当前系统的CPU运行的情况
[root@MDNode01 ~]# 

创建一个软链接

ln -s [文件] [文件]
[root@MDNode01 ~]# ln b.txt c.txt
[root@MDNode01 ~]# ll -li
total 32
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 b.txt
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 c.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# ln -s c.txt d.txt
[root@MDNode01 ~]# ll -li
total 32
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 b.txt
11796496 -rw-r--r--  2 root root  234 Aug  8 19:51 c.txt
11796494 lrwxrwxrwx  1 root root    5 Aug  8 20:00 d.txt -> c.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# 

软连接:

​ 拥有一个独立的指向的物理存储空间,并且链接数没有发生改变

​ 但是删除源文件,和硬链接的相似,改变那个链接下面的信息都会使另一个链接发生改变

软连接 -- >> 源文件 -->> 物理内存

​ 硬链接 -->> 指向和源文件相同的物理位置

[root@MDNode01 ~]# rm -f c.txt
[root@MDNode01 ~]# ll -li
total 28
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  1 root root  234 Aug  8 19:51 b.txt
11796494 lrwxrwxrwx  1 root root    5 Aug  8 20:00 d.txt -> c.txt[这个链接会出现问题]
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog

[root@MDNode01 ~]# cat d.txt
cat: d.txt: No such file or directory

创建一个你删除的文件就可以修复了

[root@MDNode01 ~]# vi c.txt
[root@MDNode01 ~]# ll -li
total 32
11796491 drwxr-xr-x  3 root root 4096 Aug  8 18:55 a
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796496 -rw-r--r--  1 root root  234 Aug  8 19:51 b.txt
11796497 -rw-r--r--  1 root root   33 Aug  8 20:21 c.txt
11796494 lrwxrwxrwx  1 root root    5 Aug  8 20:00 d.txt -> c.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
[root@MDNode01 ~]# 

这就可以了,

stat
[root@MDNode01 /]# cd etc
[root@MDNode01 etc]# stat ./profile
  File: `./profile'
  Size: 1796      	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 4980771     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 16:32:12.672043023 +0800
Modify: 2013-10-02 17:06:18.000000000 +0800
Change: 2019-07-19 23:36:08.683998356 +0800

stat查看文件的元数据[相当wind的文件属性]

Access: 最后一次访问的时间

Modify: 内容最后一次被修改的时间

Change: 元数据最后一次发生的改变时间

[root@MDNode01 /]# cd etc
[root@MDNode01 etc]# stat ./profile
  File: `./profile'
  Size: 1796      	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 4980771     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 16:32:12.672043023 +0800
Modify: 2013-10-02 17:06:18.000000000 +0800
Change: 2019-07-19 23:36:08.683998356 +0800
[root@MDNode01 etc]# chmod a+x ./profile
[root@MDNode01 etc]# stat ./profile
  File: `./profile'
  Size: 1796      	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 4980771     Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 16:32:12.672043023 +0800
Modify: 2013-10-02 17:06:18.000000000 +0800
Change: 2019-08-08 20:29:13.799044630 +0800
[root@MDNode01 etc]# ll -li | grep profile
4980771 -rwxr-xr-x.  1 root root   1796 Oct  2  2013 profile
4980772 drwxr-xr-x.  2 root root   4096 Jul 19 23:36 profile.d
[root@MDNode01 etc]# date
Thu Aug  8 20:31:46 CST 2019
[root@MDNode01 etc]# vi ./profile
[root@MDNode01 etc]# ll -li ./profile
4981697 -rwxr-xr-x 1 root root 1805 Aug  8 20:32 ./profile
[root@MDNode01 etc]# stat ./profile
  File: `./profile'
  Size: 1805      	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 4981697     Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 20:32:31.589055215 +0800
Modify: 2019-08-08 20:32:31.589055215 +0800
Change: 2019-08-08 20:32:31.598054119 +0800
[root@MDNode01 etc]# 

touch

触摸,

[root@MDNode01 ~]# stat b.txt
  File: `b.txt'
  Size: 234       	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 11796496    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 19:56:09.671039508 +0800
Modify: 2019-08-08 19:51:10.567018568 +0800
Change: 2019-08-08 20:10:24.560042611 +0800
[root@MDNode01 ~]# touch b.txt
[root@MDNode01 ~]# stat b.txt
  File: `b.txt'
  Size: 234       	Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d	Inode: 11796496    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-08-08 20:40:11.507017786 +0800
Modify: 2019-08-08 20:40:11.507017786 +0800
Change: 2019-08-08 20:40:11.507017786 +0800
[root@MDNode01 ~]# 

可以使用这个命令做安全机制

也可以创建一个不存在的文件或者目录

cat命令

cat是一个外部命令,是一个进程

more命令

more是一个查看文件的一个

less命令

这三个命令都是查看文件内容的命令

head命令和tail

head查看文件的前十行,tail把文件末尾显示出来

head -4 [文件名] tail -4 [文件名] 查看文件的前4行和查看文件的后4行

可以使用管道把head查询出来的最后一行赋值给tail命令显示最后的

echo "/" | xargs ls -l

vi编辑器

vi +4 [文件名] 打开相对于的文件,把光标移动到第4行.

vi +/etc [文件名] 打开编辑后,光标移动到相对于的etc中的行数。相识查找功能,

在退出编辑模式的时候,ZZ表示退出。

编辑-->>输入

i:在光标所在的前面插入

a:在当前光标后面插入

o:在光标所在行的下面新建一行,光标移动到下行,并转成输入模式

O:在上方新建行,转成输入模式

I:把光标移动到当前行的行首,并且转成输入模式

A:把光标移动到行尾,转成输入模式

ESC-->>编辑模式:

在编辑模式的情况下:/“字符串” 查找文本中的字符串出现的第一次位置

字节

h:光标左移动

j:光标下移动

k:光标上移动

l:光标右移动

单词

w:移动到下一个单词

e:跳转到当前或下一个单词的词尾

b:跳转到当前或下一个单词的词首

行内

0(零):绝对行首

^:当前行的第一个空白字符

$:绝对行尾

行间

G:文章的末尾

3G:第三行

gg:文章的开头

翻屏:

ctrl+f或者ctrl+b

删除和替换单个字符

x:删除光标位置的字符

3x:删除光标开始的三个字符

r:替换当前的字符

删除

dw:删除当前的字符

dd:删除当前的行

复制和粘贴

2dd:剪贴当前光标下面的两行

ym:复制当前的单词

yy:复制当前行

2yy:复制两行

P(大写),粘贴到上一行

p(小写),粘贴到下一行

ctrl+r,返回上一次操作

u:撤销

.:执行上一步执行的命令

编辑模式-->>末行模式

😕"":查找字符串

:set nu显示行号

:set nonu关闭显示行号

/“”直接查找

n下一个

N上一个

在末行模式下,1,$d删除第一行到最后一行

查找和替换

1,$s/a/b/

从第一行开始到最后的a字符替换成b字符,斜线可以换成#或者都可以

提示的信息于行为单位,提示替换

:set nu:像是

末行模式下的范围

n:代表行号

.:当前光标行

+n:偏远你行

$:末尾行

%,全文

Grep:命令

查找b.txt文件中包含ls字符串的行

[root@MDNode01 ~]# grep ls b.txt
ls 展示当前的目录下面的文件
ls -li	详情的展示当前目录下面的文件的信息

显示没有包含ls的行

[root@MDNode01 ~]# grep -v ls b.txt
pwd	展示现在所处的文件位置
touch	创建一个文件
clear	清除屏幕的信息
hop	展示当前系统的CPU运行的情况
[root@MDNode01 ~]#

通配符

[root@MDNode01 ~]# ls -li
total 32
11796491 drwxr-xr-x  3 root root 4096 Aug  9 06:40 a
11796495 -rw-r--r--  1 root root    0 Aug  9 06:40 ab
11796496 -rw-r--r--  1 root root    0 Aug  9 06:40 abc
11796489 -rw-------. 1 root root  900 Jul 19 23:38 anaconda-ks.cfg
11796499 -rw-r--r--  1 root root    0 Aug  9 06:40 bcd
11796498 -rw-r--r--  1 root root  234 Aug  9 06:20 b.txt
11796500 -rw-r--r--  1 root root    0 Aug  9 06:41 cde
11796497 -rw-r--r--  1 root root   33 Aug  8 20:21 c.txt
11796494 lrwxrwxrwx  1 root root    5 Aug  8 20:00 d.txt -> c.txt
11796482 -rw-r--r--. 1 root root 8815 Jul 19 23:38 install.log
11796483 -rw-r--r--. 1 root root 3384 Jul 19 23:37 install.log.syslog
11796501 -rw-r--r--  1 root root    0 Aug  9 06:41 xyz
[root@MDNode01 ~]# ll -li ./a*
11796495 -rw-r--r--  1 root root    0 Aug  9 06:40 ./ab
11796496 -rw-r--r--  1 root root    0 Aug  9 06:40 ./abc
11796489 -rw-------. 1 root root  900 Jul 19 23:38 ./anaconda-ks.cfg

./a:
total 4
11796492 drwxr-xr-x 3 root root 4096 Aug  8 18:55 b
[root@MDNode01 ~]# ll -li ./a?
11796495 -rw-r--r-- 1 root root 0 Aug  9 06:40 ./ab
[root@MDNode01 ~]# ll -li ./a??
11796496 -rw-r--r-- 1 root root 0 Aug  9 06:40 ./abc
正则表达式

匹配操作符

\ 转义字符

. 匹配任意单个字符

^ 行首

$ 行尾

| 连接操作符

(,) 选择操作符

\n 反向引用

[] 字符序列单字符占位

[1249a]:代表文件中存在1249a的字符匹配,
[^12]:取反,不能出现1或2的字符

单词首尾边界

\<,\>;\<abc 匹配单词与abc开始的单词

重复操作符

?		匹配0到1次
*		匹配0到多次
+		匹配1到多次
{n}		匹配n次
{n,}	匹配n到多次
{n,m}	匹配n到m次
posted @ 2020-07-12 21:03  shaoyayu  阅读(610)  评论(0编辑  收藏  举报