vim,命令总结

---恢复内容开始---

第1章 命令总结

1.1 echo命令

命令

功能:所见即所得

echo

参数说明

-n

           不输出行尾的换行符

-e

允许对下面的加反斜线转义的字符进行解释(识别特殊符号)

-E

制止对STRINGS中的那些序列进行解释

--help

显示帮助并退出(须单独运行)

--version

输出版本信息并退出(须单独运行)

例如:

[root@oldoboy250 ~]# echo 'hello world'

hello world

[root@oldoboy250 ~]# echo -e 'suibian\nxiaobao'

suibian

xiaobao

PS1定义了命令提示符

    -bash: [\u@\h: command not found

    -bash: ifconfig: command not found

                    命令    不   找  (找不到命令)

                    

                  

    -bash: /usr/sbin/useradd: Permission denied

1.2 whoami命令

命令

功能:查看当前用户

whoami

参数

[root@oldoboy250 ~]# whoami

root

1.3 pwd命令

命令

功能:查看当前用户位置(打印当前用户所在的位置)

pwd

 

1.4 history命令

命令

功能:日志审计

history

参数

-n

显示n个最近的记录

-r

读取记录,但不会添加内容记录

-w

覆盖原有的history文件

-c

清除记录

-d

《编号》[n]删除指定n跳记录

例如:

n 显示n个最近的记录

[root@oldoboy250 ~]# history 5

    4  history

    5  cat ./bash_history

    6  ls ./bash_history

    7  history 2

    8  history 5

 [root@oldoboy250 ~]# history –c

 

 [root@oldoboy250 ~]# history 查看历史记录

   

#删除第5条历史记录

[root@oldoboy250 ~]# history -d 5

! +命令中的前面字符:调用之前的历史命令,只能调用最近执行过的命令。

!!:执行上一条执行过的命令

!+历史命令中的编号:[root@oldboyedu-gx etc]# ls -lt

1.5 alias命令

命令

功能:创建别名

alias

参数

Unalias

取消别名

[root@oldoboy250 ~]# alias bd="ping www.baidu.com"

[root@oldoboy250 ~]# bd

取消别名

[root@oldoboy250 ~]# unalias bd

查看别名

[root@oldoboy250 ~]# alias

 alias cp='cp -i'

    alias egrep='egrep --color=auto'

    alias fgrep='fgrep --color=auto'

    alias grep='grep --color=auto'

    alias l.='ls -d .* --color=auto'

    alias ll='ls -l --color=auto'

    alias ls='ls --color=auto'

    alias mv='mv -i'

    alias rm='rm -i'

1.6 帮助命令

命令

功能

man

查看命令帮助

--help

查看命令帮助

[root@oldboyedu ~]# ls --help

        Usage: ls [选项] [文件]

        ls

        ls -l

        ls -l /tmp

[root@oldoboy250 ~]# man ls

[root@oldoboy250 ~]# man cd

1.7 ls命令

命令

功能:查看目录和文件

ls

参数

-1

数字1,以列表的形式展示出某个目录下的文件

-l

显示出某个目录下的详细信息,相当于ll(别名)

-h

要配合l,t,a参数使用,以人类可读的方式显示目录文件(文件大小上加了单位)

-t

按照修改时间排序,显示目录文件信息,最新的时间段在上面

-r

倒序排列显示目录和文件信息

-i

显示目录和文件的inode号

-a

显示所有目录文件,包括隐藏的目录文件

-d

只显示目录本身

例如:

[root@oldoboy250 ~]# ls -a

.    anaconda-ks.cfg  .bashrc

..   .bash_logout     .cshrc

abc  .bash_profile    .tcshrc

[root@oldoboy250 ~]# ls -l

total 8

-rw-r--r--. 1 root root    4 Jun 18 11:15 abc

-rw-------. 1 root root 1444 Jun 12 20:13 anaconda-ks.cfg

[root@oldoboy250 ~]# ls -al

total 28

dr-xr-x---.  2 root root  125 Jun 18 11:18 .

dr-xr-xr-x. 18 root root  238 Jun 18 11:08 ..

-rw-r--r--.  1 root root    4 Jun 18 11:15 abc

-rw-------.  1 root root 1444 Jun 12 20:13 anaconda-ks.cfg

-rw-r--r--.  1 root root   18 Dec 29  2013 .bash_logout

-rw-r--r--.  1 root root  176 Dec 29  2013 .bash_profile

-rw-r--r--.  1 root root  176 Dec 29  2013 .bashrc

-rw-r--r--.  1 root root  100 Dec 29  2013 .cshrc

-rw-r--r--.  1 root root  129 Dec 29  2013 .tcshrc

[root@oldoboy250 ~]# ls -tal

total 28

dr-xr-x---.  2 root root  125 Jun 18 11:18 .

-rw-r--r--.  1 root root    4 Jun 18 11:15 abc

dr-xr-xr-x. 18 root root  238 Jun 18 11:08 ..

-rw-------.  1 root root 1444 Jun 12 20:13 anaconda-ks.cfg

-rw-r--r--.  1 root root   18 Dec 29  2013 .bash_logout

-rw-r--r--.  1 root root  176 Dec 29  2013 .bash_profile

-rw-r--r--.  1 root root  176 Dec 29  2013 .bashrc

-rw-r--r--.  1 root root  100 Dec 29  2013 .cshrc

-rw-r--r--.  1 root root  129 Dec 29  2013 .tcshrc

[root@oldoboy250 ~]# ls -ihl

total 8.0K

33574982 -rw-r--r--. 1 root root    4 Jun 18 11:15 abc

33574978 -rw-------. 1 root root 1.5K Jun 12 20:13 anaconda-ks.cfg

[root@oldoboy250 ~]# ls -rhl

total 8.0K

#以列表的形式展示出tmp目录下的文件

    [root@oldboyedu ~]# ls -1 /tmp/

    #详细信息

    [root@oldboyedu ~]# ls -l /tmp

    [root@oldboyedu ~]# ls -tl /etc/

    [root@oldboyedu ~]# ls -tlr /etc/

第2章 目录结构

/

├── bin -> usr/bin   #普通用户可执行的命令存放目录 软链接

├── boot             #系统的启动项和引导菜单

├── data

├── dev              #系统的设备目录

├── etc              #系统配置文件目录

├── home             #普通用户的家目录

├── lib -> usr/lib   #32位库文件

├── lib64 -> usr/lib64#64位库文件

├── media            #光盘、挂载目录

├── mnt              #挂载目录

├── opt              #第三方厂商软件安装目录

├── proc             #反映系统当前进程的实时状态

├── root             #超级用户的家目录

├── run              #存放系统服务的pid文件

├── sbin -> usr/sbin #超级管理员使用的应用程序目录 软链接

├── srv 

├── sys

├── tmp              #临时目录,类似于回收站

├── usr              #相当于Windows下的c:\program

└── var              #可变化系统文件

#普通用户可执行的命令存放目录

软链接

bin --> usr/bin

#超级用户可执行的命令存放目录

sbin --> usr/sbin

#系统命令,依赖的库文件存放的目录

lib --> usr/lib

lib64 --> usr/lib64

#系统的启动项和引导菜单

/boot

#系统的设备目录

/dev

sda :/dev系统中的第一块磁盘

sda1:系统中的第一块磁盘的第一个分区

sda2:系统中的第二块磁盘的第二个分区

sda3:系统中的第三块磁盘的第三个分区

sdb:系统中的第二块磁盘

sdc:系统中的第三块磁盘

sdc4系统中第三磁盘的第四个分区

/dev/null:类似于黑洞,垃圾回收站。

/dev/zero:能产生源源不断的数据

/dev/pts/:查看用户连接的终端数

/usr

/usr    目录 相当于Windows下的C:\Windows目录

/usr/local  软件安装目录 相当于C:\Program

/usr/bin    普通用户使用的应用程序(重要)

/usr/sbin   超级管理员用户使用的应用程序(重要)

/usr/lib    32位库文件

/usr/lib64  64位库文件

#系统配置文件目录

etc

/etc/hostname:记录主机名的配置文件

/etc/hosts:本地域名解析配置文件

/etc/reslov.conf:DNS解析配置文件

/etc/sysconfig/network-scripts/ifcfg-eth0:网卡配置文件

普通用户的家目录

/home

超级用户的家目录

/root

光驱、挂载目录

/media

/mnt

第三方厂商安装软件的目录

/opt

反应系统当前进程的实时状态

/proc

临时目录,类似于回收站

/tmp

可变化系统文件目录

var

/var/log/messages:系统日志

/var/log/secure:系统登录日志

l:软链接

d:目录

-:普通文件

c:块设备文件

2.1 bash xshell的特性

一.bash初识

 

    1.什么是bash shell

        是一个命令解释器,与内核进行交互(用户和操作系统的接口)

    2.bash shell的作用

        文件管理

        用户管理

        权限管理

        磁盘管理

        网络管理

        软件管理

        应用管理

        ...

    3.bash两种使用方式

        1)命令

            效率低,适合少量工作

        2)脚本

            效率高,适合大量工作

           

    4.命令提示符

   

    [root              @           centos7            ~       ]                   # :超级管理员

    [oldboy            @           centos7             ~       ]                   $ :普通用户

    当前登录的用户                 主机名        当前目录的位置              

   

    /home/oldboy:普通用户家目录

    /root:root用户的家目录

二.shell的基础语法

 

命令        选项        参数

command  [-options] [arguments]   中括号 可有可无

 

echo:所见即所得。输出你echo后面参数内容

-e:识别换行符等特殊符号

\:转义符

$:调用变量

 

echo 'zls'

echo -e 'zls\n123'  (换行--->\n)

第3章 快捷键

三.shell的基本特性

    1.命令补全 Tab(命令 选项 参数)

    2.参数补全:yum install -y bash-completion

    3.选项补全:主要是补全 路径

    C:\Users\Administrator\Documents\Virtual Machines\CentOS 64 位

   

    linux的快捷键:

    Ctrl + a:将光标跳转到行首

    Ctrl + e:将光标跳转至行末

    Ctrl + w:以空格为单位,将当前光标位置之前的内容删除

    Ctrl + u:将当前光标位置之前的内容全部删除

    Ctrl + l:清屏

    Ctrl + c:终止当前命令

    Ctrl + d:退出,断开当前连接(exit,logout)

    Ctrl + z:挂起,放后台执行

    Ctrl + r:搜索历史命令

    Ctrl + s:锁屏

    Ctrl + q:解锁

    Ctrl + 左右:按照单词跳转光标

    ESC + .  :瞬间显示出上一条命令,空格分隔,最后的内以容

    Ctrl +y  :粘贴误删的命令,配合u,k,w使用。只有u,k,w快捷键删除时才能恢复。

第4章 cd 命令

命令

功能:切换目录

cd

参数 目录名

cd -

返回上一次进入的目录

cd ~

进入当前用户的家目录

cd .

进入当前目录

cd ..

返回上一级目录

cd ~ /oldboy

进入到oldboy目录

4.1 mkdir创建目录

命令

功能

mkdir

参数

-m

创建目录时,指定权限(很少用,几乎不用)

-p

如果目录已经存在则不报错,没有则创建,(递归创建)

-v

打印出创建目录过程信息

 

语法:

mkdir [选项]…[目录名]…make directory

注意:不加任何选项的情况下,只能在已有的目录下创建目录

    建议:创建目录时尽量加上-p选项

        -m,     创建目录时,指定权限(很少用,几乎不用)

        -p,     如果目录已存在则不报错,递归创建

        -v,     打印出创建过程信息

       

    权限:

        r:read 读

        w:write 写

        x:exec 执行

    目录权限:755

    文件权限:644

#创建多个目录

    [root@oldboyedu ~]# mkdir /dir1 /dir2 /dir3

    [root@oldboyedu ~]# mkdir /dir{4..10}

 

    [root@oldboyedu ~]# mkdir /home/zls/dir{1..3}/oldboy1 -pv

    mkdir: created directory ‘/home/zls/dir1’

    mkdir: created directory ‘/home/zls/dir1/oldboy1’

    mkdir: created directory ‘/home/zls/dir2’

    mkdir: created directory ‘/home/zls/dir2/oldboy1’

    mkdir: created directory ‘/home/zls/dir3’

    mkdir: created directory ‘/home/zls/dir3/oldboy1’

 

   

    #报错

    [root@oldboyedu ~]# mkdir /dir4

    mkdir: cannot(不能) create(创建) directory(目录) ‘/dir4’: File(文件) exists(存在)

   

    [root@oldboyedu ~]# mkdir /dir11/oldboy        #没有这个文件 或者 目录

    mkdir: cannot create directory ‘/dir11/oldboy’: No such f

 

 

 

4.2 touch创建文件

语法: touch [选项]... 文件名...

   

    [root@oldboyedu ~]# touch abc

 

    [root@oldboyedu ~]# touch  /oldboyedu1/abc

    touch: cannot touch ‘/oldboyedu1/abc’: No such file or directory

 

    1.创建的文件,必须在已存在的目录下

    2.文件已存在的情况下,不会报错,会修改文件的创建时间

    3.源文件内容不会被覆盖

    4.对目录也可以操作,不会报错,修改创建时间(Linux中,一切皆文件)

   

    [root@oldboyedu ~]# touch 123 456 789

    [root@oldboyedu ~]# touch def hig /usr/local/src/abc

    [root@oldboyedu ~]# touch /usr/local/src/{abc,def,hig}

 

4.3 tree命令

功能:以树状形式显示目录结构

命令

功能

tree

以树状形式显示目录结构

-L

指定层级

-d

只查看目录

如果没有tree命令,需要安装:yum install tree –y

[root@oldboyedu ~]# tree

    .

    ├── 123

    ├── 456

    ├── 789

    ├── abc

    ├── anaconda-ks.cfg

    ├── check_student.sh

    ├── def

    ├── hig

    ├── oldboy

    ├── student.txt

    └── zls

        └── zls1

            └── zls2

           

    [root@oldboyedu ~]# tree -L 2 /usr/local/

    /usr/local/

    ├── abc

    ├── bin

    ├── etc

    ├── games

    ├── include

    ├── lib

    ├── lib64

    ├── libexec

    ├── sbin

    ├── share

    │   ├── applications

    │   ├── info

    │   └── man

    └── src

        ├── abc

        ├── def

        ├── hig

        └── zls123

 

 

4.4 cp复制

命令

功能

cp

复制

-r

递归拷贝,拷贝目录

-p

保持源文件的属性

-v

显示复制的详细过程

-a

拷贝目录并保持属性(相当于-r,-p,-t)

-t

交换目录和源文件的位置

    语法:

       cp [OPTION]... 源文件 目标

       cp [OPTION]... SOURCE... DIRECTORY

       cp [OPTION]... -t DIRECTORY SOURCE...

 

    [root@oldboyedu ~]# cp oldboy /usr/

    cp: omitting directory ‘oldboy’

    [root@oldboyedu ~]# cp -v 123 456 789 /opt/

    ‘123’ -> ‘/opt/123’

    ‘456’ -> ‘/opt/456’

    ‘789’ -> ‘/opt/789’

 

    1.cp可以修改名字,指定的目录不存在,即改名

 

 

4.5 mv移动(剪切)

命令

功能

mv

参数

-i

交互(每次询问是否覆盖)

-t

调换目标和源文件的位置

  1. 如果目标是一个目录,就把文件放入目录。
  2. 如果目标是一个文件,就会被覆盖

[root@db04 ~]# mv file /tmp/

将file目录移动到 /tmp/目录下

    [root@db04 ~]# mv file1 test1

    将file1改名成test1

    [root@db04 ~]# mv dir1 /tmp/

    将dir1目录移动到/tmp/目录下

    [root@db04 ~]# mv dir2 file4 file5 file6 /opt/ /usr/local/

    将多个目录移动到/usr/local/目录下

    [root@db04 ~]# mv /tmp/dir1 ./

    将/tmp/dir1/移动到当前目录

    [root@db04 ~]# mv /tmp/dir1 .

    将/tmp/dir1到当前目录

    [root@db04 ~]# mv /tmp/dir2 ../

    将/tmp/dir2移动到当前目录的上一级目录

    [root@db04 ~]# mv -t /tmp/ file1 file2 ./file3

    将file1 file2 ./file3移动到/tmp/目录下

   

4.6 rm 删除(remove)

命令

功能

mv

删除

-i

交互

-r

递归

-f

强制

-v

显示删除过程

 

[root@oldboyedu ~]# rm -r zls

    rm: descend into directory ‘zls’? y

    rm: descend into directory ‘zls/zls1’? y

    rm: descend into directory ‘zls/zls1/zls2’? y

    rm: remove directory ‘zls/zls1/zls2/oldboy’? y

    rm: remove directory ‘zls/zls1/zls2’? y

    rm: remove directory ‘zls/zls1’? y

    rm: remove directory ‘zls’? y

4.7 Cat查看命令

命令

功能

cat

查看

-n

查看文件内容并显示行号

-A

显示文件的结束符和tab键 相当于-vET

-b

空行不显示编号

-E

显示文件的结束符($)

-T

显示文件的tab键(^I)

 

cat >> zls.txt << EOF

    卧槽

    作者:曾老湿

    *风景美如画,

    本想吟诗赠天下。

    奈何自己没文化,

    一句卧槽浪好大。

    谢谢大家。

    EOF

用法:cat [选项]... [文件]...

   

    [root@oldboyedu ~]# cat 123

    file1

    [root@oldboyedu ~]# cat 456

    file2

    [root@oldboyedu ~]# cat 123 456

    file1

    file2

 

4.8 tac 倒序查看文件

[root@oldboy250 ~]# cat zls.txt

 卧槽

 作者:曾老湿

 *风景美如画,

 本想吟诗赠天下。

 奈何自己没文化,

 一句卧槽浪好大。

 谢谢大家。

[root@oldboy250 ~]# tac zls.txt

 谢谢大家。

 一句卧槽浪好大。

 奈何自己没文化,

 本想吟诗赠天下。

 *风景美如画,

 作者:曾老湿

 卧槽

 

4.9 more查看文件命令

命令

功能

more

一百分比的形式显示文件内容

/

+关键字 回车(搜索内容)

n

向下搜索

N(shift +n)

向上搜索

4.10 less 查看文件命令

命令

功能

less

查看较少文件的内容

 

 

 

[root@oldboy250 ~]# less /etc/passwd

 

4.11 head查看文件的前n行

命令

功能

head

默认显示文件的前10行

-n

显示前n行,n 可以不写,为数字,n后面加数字

tail

查看文件的后面的内容(默认后10行)

-f

追踪文件末尾 相当于tailf

-n

显示后n行,n可以不写,为数字,n后面加数字

4.12 三剑客:grep(egrep) awk sed

Linux命令三剑客,老大awk,最擅长取列,老二sed,最擅长取行,老三grep最擅长过滤,Linux运维人员必会的三个命令:

命令

功能

grep

过滤文件内容

参数

 

-n

显示行号

-o

只显示关键字

-B

显示关键字的前n行,n为数字 (before)

-A

显示关键字的后n 行,n为数字(after)

-C

显示关键字的前后n行,n为数字(center)

^

以……开头

$

以……结尾

.

代表任意字符

*

代表所有

|

管道符,将前面的命令输出的结果,交给后面的命令去出来

-r,-R

递归过滤 某一个目录下的文件中的关键字

[root@oldboyedu ~]# grep '^root' /etc/passwd

    [root@oldboyedu ~]# grep 'bash$' /etc/passwd

   

    #以数字的范围开头

    [root@oldboyedu ~]# grep -n '^[0-9]' passwd

    26:1

    27:2

    28:3

    [root@oldboyedu ~]# grep -n '^[6-9]' passwd

    [root@oldboyedu ~]# grep -n '^[1-2]' passwd

    26:1

    27:2

   

    #以字母的范围开头

    [root@oldboyedu ~]# grep -n '^m' passwd

    13:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

    [root@oldboyedu ~]# grep -n '^[m-n]' passwd

    13:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

    17:nobody:x:99:99:Nobody:/:/sbin/nologin

    [root@oldboyedu ~]# grep -n '^[a-z]' passwd

    [root@oldboyedu ~]# grep -n '^[a-Z]' passwd

    [root@oldboyedu ~]# grep -i 'ftp' passwd

    [root@oldboy250 ~]# grep -r 'oldboy' ./*

./01老男孩linux脱产4期-综合架构开场-day32.txt:   1.用户通过浏览器输入oldboyedu.com->回车

./123.txt:oldboy

./oldboy02/.oldgir/.bash_history:su - oldboy

./test.txt:server_nAme www.oldboy.com;

 

4.13       文件上传下载 rz sz

命令

功能:yum install lrzsz –y安装

rz

上传文件到linux系统(直接拖拉文件)

  1. 不支持上传超过4G的文件
  2. 不支持断点续传

sz

下载文件

Xshell中支持XFTP上传文件

4.14 从外网下载文件wget curl

命令

功能

wget

如果没有则安装:yum install wget curl -y

-O

指定下载路径,可以改命令

curl

从外网下载文件

-o

指定下载的路径,可以改名

4.15 查找命令which      type -a

 

命令

功能

whicd

查找命令的路径

type -a

查找命令所有路径,包括连接路径

which

   

    [root@oldboyedu ~]# which mv

    alias mv='mv -i'

        /usr/bin/mv

    [root@oldboyedu ~]# which cp

    alias cp='cp -i'

        /usr/bin/cp

    [root@oldboyedu ~]# which ls

    alias ls='ls --color=auto'

        /usr/bin/ls

    [root@oldboyedu ~]# which useradd

    /usr/sbin/useradd

 

    type

   

    [root@oldboyedu ~]# type -a ls

    ls is aliased to `ls --color=auto'

    ls is /usr/bin/ls

    [root@oldboyedu ~]# type -a for

    for is a shell keyword

    [root@oldboyedu ~]# type -a cd

    cd is a shell builtin

    cd is /usr/bin/cd

    [root@oldboyedu ~]# type -a for

    for is a shell keyword

    [root@oldboyedu ~]# type -a [

    [ is a shell builtin

    [ is /usr/bin/[

 

 

4.16       字符处理-排序sort

命令

功能

sort

排序

-t

指定分隔符

-k

指定第几列的内容(按分隔符)不指定分隔符,默认是空格为分隔符

-n

按照阿拉伯数字大小顺序排序

-r

倒序排列

4.17 字符处理-去重uniq -c

命令

功能

uniq

去重

-c

显示去重的数量(count)

4.18 字符处理-截取cut

命令

功能

cut

截取

-d

指定分隔符

-f

指定第几列

-c

根据字符来取数据

4.19 字符处理-统计wc -l

命令

功能

 

wc

统计

 

-l

统计行数

 

-c

统计字节数

 

-w

统计单词数

 

[root@oldboy250 ~]# cat f.txt

ddd fff

ddd fff

3ddd fff

4ddd

ffff

4ddd fff

[root@oldboy250 ~]# sed -n '2p' f.txt

ddd fff

[root@oldboy250 ~]# sed -n '1,2p' f.txt

ddd fff

ddd fff

grep

[root@oldboy250 ~]# cat f.txt

fzb fff

ddd fff

3ddd fff

4ddd ffff

ffff ffff

4ddd ffff

fzbb bbbbbb

3fzb bbbbbb

4fzb bbbbbb

 

[root@oldboy250 ~]# grep 'fzb' f.txt

fzb fff

fzbb bbbbbb

3fzb bbbbbb

4fzb bbbbbb

[root@oldboy250 ~]# grep -o 'fzb' f.txt

fzb

fzb

fzb

fzb

 

 

 

第5章 软链接和硬链接

一.文件的软硬链接

    1.软链接

        一个文件,被分为两个部分:

            1)用户数据(就是用户给文件的命名)

            2)元数据(文件的内容)

        元数据:用来描述文件的属性

        block:数据块,默认4k

        ln -s /root/soft_link /tmp/soft_link

                源文件          目标

               

        软链接的应用场景

        1)软件升级

        2)代码发布

        3)不方便移动的目录

        4)数据回滚

        5)程序读取

       

    2.硬链接

        1)具有同一个inode号的文件,互为硬链接文件

        2)目录不能创建硬链接

       

软硬链接总结:    

    1)创建命令不同

        软链接:ln -s

        硬链接:ln

    2)目录不能创建硬链接,并且硬链接不可以跨越系统的分区,软链接可以

    3)硬链接文件与源文件inode相同,软链接文件与源文件inode不同

    4)删除软链接文件,对源文件无影响,但是删除软链接源文件对软链接文件有影响

    5)删除硬链接文件,对源文件也无影响,并且删除源文件,对硬链接文件也无影响

   

企业面试题:

当前磁盘空间还剩余500G,但是就无法往里面写入数据,报错,磁盘空间满了。

[root@db04 ~]# df -i

Filesystem                   Inodes IUsed   IFree IUse% Mounted on

/dev/mapper/vg_db01-lv_root 1152816 76391 1076425    7% /

tmpfs                        238319     1  238318    1% /dev/shm

/dev/sda1                    128016    39  127977    1% /boot

 

#模拟

[root@db04 ~]# dd if=/dev/zero of=/opt/disk bs=1K count=1024

[root@db04 ~]# mkfs.ext4 -i 1024 /opt/disk

[root@db04 ~]# mkdir /data1

[root@db04 ~]# mount -t ext4 -o loop /opt/disk /data1

[root@db04 data1]# touch file{1..2000}

touch: 无法创建"file1014": 设备上没有空间

touch: 无法创建"file1015": 设备上没有空间

touch: 无法创建"file1016": 设备上没有空间

touch: 无法创建"file1017": 设备上没有空间

touch: 无法创建"file1018": 设备上没有空间

[root@db04 data1]# df -h

Filesystem                   Size  Used Avail Use% Mounted on

/dev/mapper/vg_db01-lv_root   18G  2.0G   15G  12% /

tmpfs                        931M     0  931M   0% /dev/shm

/dev/sda1                    485M   39M  421M   9% /boot

/opt/disk                    891K   39K  801K   5% /data1

 

[root@db04 data1]# df -i

Filesystem                   Inodes IUsed   IFree IUse% Mounted on

/dev/mapper/vg_db01-lv_root 1152816 76393 1076423    7% /

tmpfs                        238319     1  238318    1% /dev/shm

/dev/sda1                    128016    39  127977    1% /boot

/opt/disk                      1024  1024       0  100% /data1

硬连接数计算

 

[root@db04 ~]# mkdir hard

[root@db04 ~]# ll hard -d

drwxr-xr-x 2 root root 4096 6月   1 12:50 hard

[root@db04 ~]# cd hard

[root@db04 hard]# mkdir test1

[root@db04 ~]# ll -d hard

drwxr-xr-x 3 root root 4096 6月   1 12:50 hard

[root@db04 ~]# cd hard

[root@db04 hard]# touch test

[root@db04 ~]# ll -d hard

drwxr-xr-x 3 root root 4096 6月   1 12:50 hard

 

5.1 软链接和硬链接创建

 

命令

功能

Ln

硬链接

-s

创建软链接

-v

反向创建链接

-f

强制创建链接

&&

衔接多条命令,前面执行成功之后,在执行后面的

||

衔接多条命令,前面的执行不成功,后面也要执行

5.2 查看磁盘信息

命令

功能

df

 

-h

人类可读的形式显示磁盘信息,加入了磁盘单位

-i

查看磁盘的inode号

5.3 文本编辑器

Vi和vim

5.3.1 三种模式

5.3.1.1  命令模式

[

root@oldboyedu ~]# vim /etc/my.cnf

           G:            shift+g ,将光标移动到文件的末尾

           gg:          将光标移动到文件的开头

           dd:          删除一行,(删除多行 ndd dnd :n为数字 + p = 剪切)

           D:           将光标之后的内容都删除

           u:            撤销

           dG:          删除光标以下的所有内容(包括光标所在行)  

           dgg:         删除光标以上的所有内容(包括光标所在行)

           $(shift+4):    将光标移动到行尾

           ^(shift+6):   将光标移动到行首

           ctrl+r:       恢复撤销

           x:           删除光标所在字符

           X:           删除光标之前的字符

           yy:          复制,nyy,yny

           p(小写):      粘贴(光标所在行的下一行)

           P(大写):       粘贴(光标所在行的上一行)

           ctrl+f          往下翻页(行比较多)

           ctrl+b          往上翻页

           r:           单个字符替换

           R:           多个字符替换(按ESC退出替换)

5.3.1.2  编辑模式

            [root@oldboyedu ~]# vim /etc/my.cnf

            i:进入编辑模式

            I:将光标跳至行首,并进入编辑模式

            A:将光标跳到行末,并进入编辑模式

            a:将光标向后移动一个字符,并进入编辑模式

            o:将光标调至下一行,并进入编辑模式

            O:将光标调至上一行,并进入编辑模式

            s:删除光标所在的字符,并进入编辑模式

            S:删除光标所在的行,并进入编辑模式

 

 

5.3.1.3  末行模式

 

            [root@oldboyedu ~]# vim /etc/my.cnf

            :w          //保存当前状态

            :w!         //强制保存当前状态

            :q          //退出当前文档(文档必须保存才能退出)

            :q!         //强制退出文档不会修改当前内容

            :wq         //先保存,在退出

            :wq!        //强制保存并退出

            :x          //先保存,在退出

            ZZ          //保存退出, shfit+zz相当于 :wq 相当于:x

            :number     //跳转至对应的行号,和普通模式Ngg一个意思

           

 

 

5.3.1.4    末行模式的报错

末行模式的报错

       

            E37: No write since last change (add ! to override)

            E45: 'readonly' option is set (add ! to override)

            E212: Unable to open and write files

            末行模式(查找和替换)

       

5.3.1.5  查找,替换,另存为,读入。

查找  /string 需要搜索的内容(查找)

                   n 按搜索到的内容依次往下进行查找

                   N 按搜索到的内容依次往上进行查找

            替换

                :1,5s#sbin#test#g          替换1-5行中包含sbin的内容为test

                :%s#sbin#test#g            替换整个文本文件中包含sbin的替换为test

                :%s#sbin#test#gc           替换内容时时提示是否需要替换

                %表示所有行   s表示替换   g表示所有匹配到的内容     c表示提示

               

                替换为 w (y/n/a/q/l/^E/^Y)?

                y:替换一次

                n:选中下一个

                a:全部替换

                q:退出

                l:替换一次并退出询问

       

            另存

                :w /root/test  将文件所有内容另存为/root/test

               

            读入

                :r  /etc/hosts  读入/etc/hosts文件至当前光标下面

                :5r /etc/hosts  指定/etc/hosts文件当前文件的哪行下面

   

 

5.3.1.6   

 

---恢复内容结束---

上一篇:Shell命令-文件及目录操作之cp、find


下一篇:系统优化