文件命名规则
1.文件命名尽量小写
2.如果对文件名分割尽量使用“_”
文件管理命令
新建
touch 创建文件
当文件不存在,则创建
当文件存在后,修改时间戳
touch /opt/{老夫子,廉颇,妲己}在同级目录创建多个文件的快捷方式:
touch /opt/玩家{1…100}.log 创建1-100个玩家log
mkdir 创建文件夹
-p 递归创建
mkdir -p /opt/{老夫子,廉颇,妲己}在同级目录创建多个文件的快捷方式:
vi 创建文件
echo > 创建文件
删除
rm 删除文件或文件夹
-i 删除前需要确认
-f 强制删除(无提示)
-r 递归删除
rm 玩家{1…100}.log 利用{}语法 不能写在" "里
rm path/* 删除文件夹下的数据
rmdir 删除空目录
可以判断是否为空目录
更改
vi编辑器
i 进入插入模式
esc 进入命令模式
:wq 进入底线模式
HJKL 貌似是移动光标的键位
vim编辑器(需要进行安装)
i: 进入输入模式
如果是代码,有固定格式 如Python 必须进入VIM的粘贴模式才可以保证正确粘贴
yy 复制所在行
p 粘贴 在光标处下行打印
dd 剪切
D 删除当前行
esc:进入命令模式
gg:进入开头
ctrl+shift+g:进入结尾
u 撤回
ctrl+r 恢复撤销内容
: :进入底线模式(必须在英文输入法才能进入)
:q 不保存退出
:行号 到指定行
:wq :保存且退出vim编辑器
:/字符 查询字符
:syntax on 语法高亮
:[range]s/目标字符串/替换字符串/[option]
range"% 表示整个文件 $表示从当前行到本文件的末尾"
option"g 表示全局替换 i 标识不区分大小写"
:set nu 显示行号
:set paste : 进入粘贴(Paste)模式:对有格式的文件进行粘贴
1.选择光标 2.按下ctrl+v : 进入可视化选择模式(对列进行处理)
a.可以输入vim的命令模式的命令 如删除 复制 打印
b.可以输入shift+i 进入批量编辑模式 按两下esc 自动保存自己的批量修改
swp文件处理(linux处理文件异常)
a.多个人同时编辑一个文件
b.因为异常中断了自己的保存
不要之前输入未保存的数据了 删除swp文件
要之前的数据 在原文件里根据提示使用recover 命令
查看
cat(查看文件内容)
不适合读取大文件
-n 显示行号
-e 显示真正存在的字符
cat doupo.text > ./test.txt 重定向到一个文件
cat >>故事.txt<<EOF
你的数据在这里写。。。
EOF # 多行写入
tac(逆序输出)
more(查看文件)
Enter 下一行 空格下一页
less(适合查看大的文件)
head(查看文件头 可设定行数)
tail(查看文件尾 可设定行数)
-f 可实时刷新内容
-F 可以监控未创建文件
wc(统计文件内信息)
-l 统计行数
-w 统计单词数
-c 统计字节数
du(查看文件或目录占用磁盘空间大小)
find
find /opt -name ‘斗破.txt’
find /var -name ‘*.log’
find -type f -name ‘斗破.txt’ 找到文件类型文件
find -type d -name ‘doupo.text’ //文件夹类型
复制
cp 复制文件,文件与文件夹
cp [选项]… [-T] 源文件 目标文件
-r 递归复制文件夹与其子文件
移动
mv 移动文件,文件夹与重命名
mv ./蔡文姬.text /opt/lol/中单 单个文件移动
mv 很菜的压缩.txt 努力学习的压缩.txt 当前目录重命名
mkdir /英雄联盟2
mv /opt/英雄联盟 /英雄联盟2 注意目标目录是否存在同名文件夹,存在则,移动到它的目录下
别名
ln 创建快捷方式
alias 为命令起别名
alias rm=‘rm -i’
alias 查询总别名
unalias 取消别名
rename 替换文件的名字
rename 【要被替换的字符】 【用作替换的字符】 【替换哪些文件】
rename mp4 html ./男歌手/陈奕迅/*.mp4
打包压缩
tar 打包
tar 选项 打包之后的文件名 要打包的文件1 要打包的文件2
tar -cvf all_robots.tar robot.txt robot.1txt 打包
c:打包 v:看过程 f:必须写在结尾
tar -tf all_robots 查看打包的内容
tar -xvf all_robots.tar 解包
tar -uf 加入一个文件到打包文件中
压缩文件名的规范
tar 命令压缩的文件
.tar 打包
.tar.gz 打包+压缩
tar 打包且压缩
tar -czvf 打包且压缩
-z 压缩
tar -xzvf 解压
同步
rsync 同步操作
命令用法:
rsync 选项 源目录 目标目录
(只同步更改的内容)
本地同步
rsync 选项 本地目录1 本地目录2 //同步整个目录
rsync 选项 本地目录1/ 本地目录 //只同步目录下的数据
选项
-n 测试同步过程 不修改
–delete 删除目标文件夹多余的文档 即保持文件数目的一致
-v 显示详细操作信息
-z 传输过程中启用压缩/解压缩
-a 归档模式(所有属性都不变)
rsync+ssh同步
远程同步用法
rsync /本地路径/源目录 用户名@对方IP地址:/目标路径 (同步源目录本身)
rsync /本地路径/源目录/ 用户名@对方IP地址:/目标路径 (同步源目录下内容)
scp 远程拷贝 将本地复制到远程
scp /本地路径/源文件 用户名@对方IP地址:/目录路径
inotify 实时同步
源码包
源头:rpm包的前身
区别:
rpm 无需解决依赖 但不灵活
源码包 需要解决依赖 但灵活
安装
前提需要
1.gcc
2.make
安装
解开软件包
tar -xf inotify-tools.tar.gz
cd tools/
解开源码包
tar -xt inotify-tolols-3.13.tat.gz
进入源码目录 运行
./configure 检测当前环境 指定功能
直接执行make 将源码转为二进制程序
make install
inotifywait 实时监控(耗费一个终端)
inotifywait 选项 目标文件夹
常用命令选项
-m 持续监控 会导致之后的命令无法执行
-r 递归监控 包括子目录及文件
-q 减少屏幕输出信息
-e 指定监视的动作 modify move create delete attrib(权限)
inotifywait -mrq -e modify.create /opt/
配置实时同步
利用while循环来反复检查单词监控结果