Day02 目录和文件的管理(ADMIN02)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Day02 目录和文件的管理(ADMIN02)相关的知识,希望对你有一定的参考价值。
一、基础命令1.1 mount
mount a filesystem
挂载命令
1.1.1 mount -o ro /dev/vdb2 /part2
只读挂载/dev/vdb2
1.1.2 mount -o remount,rw /dev/vdb2 /part2
卸载/dev/vdb2再重新挂载,而且加上rw参数
1.1.3 mount -t cifs -o username=linux,password=123456 //172.216.176.36/test /mnt/win-test
把windows共享的目录挂载到linux上访问
1.2 >
覆盖重定向
文本文件 清空该文本文件
1.3 >>
追加重定向
1.4 echo
display a line of text
显示一行指定的文本1.4.1 echo -n
不输出换行
1.4.2 echo -e
支持反斜线开始的转义字符
\n 换行输出
echo -e “hello\nthe world”
输出结果如下:
hello
the world
\v 垂直tab分隔输出
echo -e "hello\vthe\vworld"
输出结果如下:
hello
the
world1.5 useradd
create a new user or update default new user information
添加用户1.6 du
estimate file space usage
du -sh /boot 统计/boot目录下总文件大小
1.7 mkdir
创建目录
1.7.1 mkdir -p
创建目录及子目录
1.7.2 mkdir -m 777
创建目录的同时并指定基本权限
1.8 rm
remove files or directories
删除文件和目录,它删除目录是从最底层的目录开始删
1.8.1 rm -fr
递归删除目录
1.8.2 rm -fr !(user50)
user50文件夹不删除,其他文件夹全部删除
1.8.3 rm -fr !(user10|user20|user50)
user10、user20、user50三个文件夹不删除,其他文件夹全部删除
1.8.4 rm -- -*
删除以-开头的所有文件。也可以用rm -f ./-*
1.9 mv
类似windows的剪切命令,还可以重命名文件。
重命名:路径不动的mv操作
1.10 cp
拷贝文件
1.10.1 cp -r
递归拷贝文件或目录目录
1.10.2 cp -i -f的优先级
当-i -f两个选项共存的时候,-i的优先级更高。-i的意思是出现重名时会出现提示信息,确认是否要覆盖
1.10.3 \cp
在本次操作中,临时取消别名的定义
1.10.4 cp -p
保持原文件的权限,修改时间等属性不变
1.11 alias
显示当前定义的有效别名
当别名与系统自带命令相同的时候,别名的优先级远高于系统自带命令
1.11.1 alias格式
alias myls=‘ls -ld‘
1.12 unalias
删除别名
1.13 uptime
查看系统CPU负载,最后三个值分别是1分钟、5分钟、15分钟内CPU的负载。
判断标准:
2核CPU,值为2表示CPU负载100%
4核CPU,值为4表示CPU负载100%
1.14 printf ‘打印格式‘ 实际内容
参数:
关于格式方面的几个特殊样式:
\a 警告声音输出
\b 退格键(backspace)
\f 清除屏幕 (form feed)
\n 输出新的一行
\r 亦即 Enter 按键
\t 水平的 [tab] 按键
\v 垂直的 [tabl] 按键
\xNN NN 为两位数的数字,可以转换数字成为字符。
1.15 ss
ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等统计。它比其他工具展示等多tcp和state信息. 它是一个非常实用、快速、有效的跟踪IP连接和sockets的新工具。
1.5.1 ss -ln
显示本地打开的所有端口
1.5.2 ss -pln
显示每个进程具体打开的socket
1.5.3 ss -an -t
显示所有tcp socket
1.5.4 ss -an -u
显示所有udp socket
1.5.5 ss -o state established ‘( dport = :smtp or sport = :smtp )‘
显示所有已建立的SMTP连接
1.5.6 ss -x src /tmp/.X11-unix/*
找出所有连接X服务器的进程
1.5.7 ss -4 state established
打印tcp ipv4 的sockets信息
二、基础知识
2.1 绝对路径
从/开始的路径
2.2 相对路径
不从/开始的路径
2.3 永久修改别名
/root/.bashrc是root用户的别名文件
在文件最后增加alias ls=‘ls -l‘
重开所有终端就能生效
三、通配符
3.1 *(asterisk)
匹配任意(0~n)个任意字符
3.2 ?(question mark)
匹配单个字符
3.3 [ ](square bracket)
匹配多个字符中的任意一个,若无则忽略
当前目录内容
ls -l
total 0
-rw-r--r--. 1 root root 0 Oct 25 17:03 a
-rw-r--r--. 1 root root 0 Oct 25 17:03 aa
-rw-r--r--. 1 root root 0 Oct 25 17:03 b
-rw-r--r--. 1 root root 0 Oct 25 17:03 bc
-rw-r--r--. 1 root root 0 Oct 25 17:03 c
-rw-r--r--. 1 root root 0 Oct 25 17:03 d
-rw-r--r--. 1 root root 0 Oct 25 17:03 de
-rw-r--r--. 1 root root 0 Oct 25 17:03 fg
-rw-r--r--. 1 root root 0 Oct 25 17:03 hi
-rw-r--r--. 1 root root 0 Oct 25 17:03 jk
ls -l ./[abcd]*
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./a
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./aa
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./b
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./bc
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./c
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./d
-rw-r--r--. 1 root root 0 Oct 25 17:03 ./de
结果只匹配了a,b,c,d开头的任意文件,fg、hi、jk文件并未匹配
3.3.1 [x-y]
当中括号里面有-的时候,就表示从x到y,连续的字符或数字
比如我要显示/dev下面的tty3~tty8这6个文件
ls /dev/tty[3-8]
输出结果:/dev/tty3 /dev/tty4 /dev/tty5 /dev/tty6 /dev/tty7 /dev/tty8
但是要显示/dev下面tty20~tty30这11个文件的话,单用中括号就无法解决了
尝试一下:
ls /dev/tty[20-30]
输出结果:/dev/tty0 /dev/tty1 /dev/tty2 /dev/tty3
出来的结果为什么是这样的呢?
因为[]只会匹配单个字符和连续字符,它是这么识别的。
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
3.4 { }(brace)
匹配多组不同的字符串或数字,以”,”分隔,全匹配
匹配多组连续的字符串或数字,以”..”分隔,全匹配
ls /dev/tty{1,3,5,7,9}
输出结果:
/dev/tty1 /dev/tty3 /dev/tty5 /dev/tty7 /dev/tty9
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
四、特殊字符含义
4.1 点号(period)
.表示当前目录
4.2 (backslash)
在命令首部的时候,表示临时取消该命令对应的别名
在命令中的时和,表示对特殊字符的转义,即取消特殊字符的功能,转换成一个普通字符
4.3 /(slash)
对路径进行分隔
五、VIM
5.1 定义
文本文件编辑器
5.2 模式
5.2.1命令模式
vim打开文件的时候,默认就是命令模式
5.2.2 输入模式
在命令模式输入a,i,o切换到输入模式,按esc键切换到命令模式
5.2.3 末行模式
在命令模式下收入冒号”:”切换到末行模式,按esc键切换到命令模式
:w 保存
:wq 保存退出
:wq! 强制保存
5.3快捷键
5.3.1 操作命令
G 移动到这个档案的最后一行(常用)
nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个
档案的第 20 行(可配合 :set nu)
gg 移动到这个档案的第一行,相当于 1G 啊! (常用)
n<Enter>
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开头的字符串
n 搜索下一个
N 搜索上一个
/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‘ >/root/.vimrc #开启自动缩进、设置背景颜色
5.7 ~/.viminfo
记录你开机以后做过的所有vim操作记录
以上是关于Day02 目录和文件的管理(ADMIN02)的主要内容,如果未能解决你的问题,请参考以下文章
大数据兼云计算(王明龙)讲师-LINUX-DAY02-文件与目录权限管理