天天看点

Day02 目录和文件的管理(ADMIN02)一、基础命令二、基础知识三、通配符四、特殊字符含义五、VIM

mount a filesystem

挂载命令

只读挂载/dev/vdb2

卸载/dev/vdb2再重新挂载,而且加上rw参数

把windows共享的目录挂载到linux上访问

覆盖重定向

文本文件 清空该文本文件 追加重定向 display a line of text 显示一行指定的文本 不输出换行 支持反斜线开始的转义字符 \n 换行输出 echo -e “hello\nthe world” 输出结果如下: hello the world \v 垂直tab分隔输出 echo -e "hello\vthe\vworld" the world create a new user or update default new user information 添加用户 estimate file space usage

du -sh /boot 统计/boot目录下总文件大小

创建目录

创建目录及子目录

创建目录的同时并指定基本权限

remove files or directories

删除文件和目录,它删除目录是从最底层的目录开始删

递归删除目录

user50文件夹不删除,其他文件夹全部删除

user10、user20、user50三个文件夹不删除,其他文件夹全部删除

删除以-开头的所有文件。也可以用rm -f ./-*

类似windows的剪切命令,还可以重命名文件。

重命名:路径不动的mv操作

拷贝文件

递归拷贝文件或目录目录

当-i -f两个选项共存的时候,-i的优先级更高。-i的意思是出现重名时会出现提示信息,确认是否要覆盖

在本次操作中,临时取消别名的定义

保持原文件的权限,修改时间等属性不变

显示当前定义的有效别名

当别名与系统自带命令相同的时候,别名的优先级远高于系统自带命令

alias myls='ls -ld'

删除别名

查看系统CPU负载,最后三个值分别是1分钟、5分钟、15分钟内CPU的负载。

判断标准:

2核CPU,值为2表示CPU负载100%

4核CPU,值为4表示CPU负载100%

参数:

关于格式方面的几个特殊样式:

\a 警告声音输出

\b 退格键(backspace)

\f 清除屏幕 (form feed)

\n 输出新的一行

\r 亦即 Enter 按键

\t 水平的 [tab] 按键

\v 垂直的 [tabl] 按键

\xNN NN 为两位数的数字,可以转换数字成为字符。

ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等统计。它比其他工具展示等多tcp和state信息. 它是一个非常实用、快速、有效的跟踪IP连接和sockets的新工具。

显示本地打开的所有端口

显示每个进程具体打开的socket

显示所有tcp socket

显示所有udp socket

显示所有已建立的SMTP连接

找出所有连接X服务器的进程

打印tcp ipv4 的sockets信息

从/开始的路径

不从/开始的路径

/root/.bashrc是root用户的别名文件

在文件最后增加alias ls='ls -l'

重开所有终端就能生效

匹配任意(0~n)个任意字符

匹配单个字符

匹配多个字符中的任意一个,若无则忽略

当前目录内容

结果只匹配了a,b,c,d开头的任意文件,fg、hi、jk文件并未匹配

当中括号里面有-的时候,就表示从x到y,连续的字符或数字

比如我要显示/dev下面的tty3~tty8这6个文件

ls /dev/tty[3-8]

输出结果:

<code>/dev/tty3 /dev/tty4 /dev/tty5 /dev/tty6 /dev/tty7 /dev/tty8</code>

但是要显示/dev下面tty20~tty30这11个文件的话,单用中括号就无法解决了

尝试一下:

ls /dev/tty[20-30]

<code>/dev/tty0 /dev/tty1 /dev/tty2 /dev/tty3</code>

出来的结果为什么是这样的呢?

因为[]只会匹配单个字符和连续字符,它是这么识别的。

tty2、tty0~tty3、tty0

最后的结果就是tty0~tty3这四个文件

正确的命令有:

命令一、ls /dev/tty{2[0-9],30}

/dev/tty20 /dev/tty21 /dev/tty22 /dev/tty23 /dev/tty24 /dev/tty25 /dev/tty26 /dev/tty27 /dev/tty28 /dev/tty29 /dev/tty30

命令二、ls /dev/tty{20..30}

/dev/tty20 /dev/tty22 /dev/tty24 /dev/tty26 /dev/tty28 /dev/tty30

/dev/tty21 /dev/tty23 /dev/tty25 /dev/tty27 /dev/tty29

匹配多组不同的字符串或数字,以”,”分隔,全匹配

匹配多组连续的字符串或数字,以”..”分隔,全匹配

ls /dev/tty{1,3,5,7,9}

/dev/tty1 /dev/tty3 /dev/tty5 /dev/tty7 /dev/tty9

ls /dev/tty{20..30}

.表示当前目录

在命令首部的时候,表示临时取消该命令对应的别名

在命令中的时和,表示对特殊字符的转义,即取消特殊字符的功能,转换成一个普通字符

对路径进行分隔

文本文件编辑器

vim打开文件的时候,默认就是命令模式

在命令模式输入a,i,o切换到输入模式,按esc键切换到命令模式

在命令模式下收入冒号”:”切换到末行模式,按esc键切换到命令模式

:w 保存

:wq 保存退出

:wq! 强制保存

G 移动到这个档案的最后一行(常用)

nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个

档案的第 20 行(可配合 :set nu)

gg 移动到这个档案的第一行,相当于 1G 啊! (常用)

n&lt;Enter&gt;

n 为数字。光标向下移动 n 行(常用)

x, X 在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X

为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)

nx n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10个字符, 10x

ndd n 为数字。删除光标所在的向下n行,例如 20dd 则是删除 20行(常用)

ncc n为数字,删除光标所在的向下n行,并且进入输入模式

d1G 删除光标所在到第一行的所有数据

dG 删除光标所在到最后一行的所有数据

d$ 删除光标所在处,到该行行尾的所有数据

D 删除光标所在处,到该行行尾的所有数据

C 删除光标所在处,到该行行尾的所有数据,并且进入插入模式(常用)

d0 那个是数字的 0 ,删除光标所在处,到该行的最前面的所有数据(常用)

d^ 删除光标所在处,到该行的最前面的所有数据

yy 复制游标所在的那一行(常用)

nyy n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(常用)

y1G 复制光标所在列到第一列的所有数据

yG 复制光标所在列到最后一列的所有数据

y0 复制光标所在的那个字符到该行行首的所有数据

y$ 复制光标所在的那个字符到该行行尾的所有数据

p, P 为将已复制的数据在光标下一行贴上,P 则为贴在光标上一行!

举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则

按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21

行开始贴。但如果是按下 P 呢? 那么原本的第 20 行会被推到变

成 30 行。 (常用)

J 将光标所在列与下一列的数据结合成同一列

u 复原前一个动作。(常用)

ctrl+r 重做上一个动作。(常用)

ZZ 保存修改并退出

ctrl+g 显示当前编辑的文件名和详细路径(常用)

5.3.2 搜索命令

/abc 从上到下搜索以abc开头的字符串

n 搜索下一个

N 搜索上一个

?abc 从下到上搜索以abc开头的字符串

/abc\c 忽略大小写查询包含abc的字符串

5.3.3末行命令

:set nu|nonu 显示/不显示行号

:set ai|noai 开启/不开启自动缩进后。下一行输入的字符会与上一行对齐,即与上一行到行首的距离是相同的

:set ignorecase/noignorcase 开启/不开启忽略大小写查找 

:set bg=dark 设置注释的颜色为浅蓝

:w newfile 保存到newfile

:r otherfile 读入otherfile

:s /old/new 替换当前行第一个'old'为new

:s /old/new/g 替换当前行所有的'old'为new

:n,m s/old/new/g 替换从n到m行的所有'old'为new

:% s/old/new/g 替换全文所有的'old'为new

:f 显示当前编辑的文件名称和详细路径

5.4 vim多文件编辑

vim -o file1 -o file2

vim file1 file2 file3

:n 编辑下一个文件

:N 编辑上一个文件

:files 列出目前这个vim打开的所有文件

5.5 vim多窗口

vim具有类似切割窗口或冻结窗口的功能

:sp[file] 不加file表示同一个文件打开两个窗口;加file表示在新窗口打开file

ctrl+w+j 光标切换到下一个窗口

ctrl+w+k 光标切换到上一个窗口

5.6 ~/.vimrc

该文件默认没有,需要自己创建

echo -e 'set bg=dark\nset ai' &gt;/root/.vimrc #开启自动缩进、设置背景颜色

5.7 ~/.viminfo

记录你开机以后做过的所有vim操作记录

本文转自 goldwinner 51CTO博客,原文链接:http://blog.51cto.com/355665/2068671,如需转载请自行联系原作者

继续阅读