1、scp(secure copy)
功能:在linux服务器之间复制文件和目录,基于ssh登录进行安全的远程文件复制。
区别:cp只能在本机上进行文件或目录的拷贝,且scp加密传输。
语法:scp [参数] [原路径] [目标路径]
参数:仅罗列部分
-B 使用批处理模式
-C 允许压缩
-p 保留原文件的修改时间、访问时间和访问权限
-r 递归复制
-P 指定数据传输所用的端口
实例:git clone "ssh://[email protected]:1118/xxxx" && scp -p -P 1118 [email protected]:hooks/commit-msg "xxxx/.git/hooks/"
2、find
功能:在指定目录下查找文件。
语法:find 目录 --参数 动作[-print --exec --ok ...]
参数:仅罗列部分
-a 需要满足多个条件and
-o 满足一个条件or
-name 根据文件名查找
-iname 忽略文件名大小写查找
-type 根据文件类型查找(f 普通文件 l软连接 d 目录 s 套接字 b 块设备)
-size 根据文件大小(b 块 c 字节 k 千字节 M 兆字节)
-maxdepth n 向下搜索最大深度n
-mindepth n 查找当前目录至少n个字目录
实例:find ./ 查找当前目录下所有文件
find ./ -name "*.txt" 查找当前目录下以.txt结尾的文件名
find ./ -name "*.txt" -fprint ./tmp.txt 将当前查询输出到tmp文件中
find ./ -type f --size -10k 查找小于10KB的文件
3、grep
功能:文本搜索工具,根据指定的模式对目标文本进行匹配检查,打印匹配到的行。
语法:grep [options] [pattern] file
参数:仅罗列部分
-n 显示匹配行号
-i 不区分大小写
grep "查找内容" --r 目录
4、sed
5、awk
6、objdump
objdump -l -S "./release/bin/abc" > logfile(符号表-并重定向)
7、mkdir
mkdir --p:创建多级目录
8、 重定向
(1)重定向输出
>:例如ls > list.txt,将ls显示的内容输出到list.txt中,可以用来复内容。
>>:输出到一个文件的末尾,不覆盖。
(2)重定向输入
<:
>>:
9、 crontab/cron
crontab:用于管理、编辑和查询用户定时任务的命令行工具,可通过crontab命令添加、修改、删除和列出定时任务,实现自动化执行特定任务。(负责管理和维护)
cron:后台运行的系统服务,负责按照预设的时间规则来执行执行的任务。(负责执行)
(1)启动、关闭和状态查看
systemctl status crond:状态查看
systemctl start crond:启动
systemctl stop crond:关闭
systemctl restart crond:重启
(2)列出任务
crontab --l
(3)编辑任务
crontal --e:会出现一个vim界面,输入时间规则和要执行的命令。
* * * * * command
星号依次表示:分钟、小时、日、月、周几;command为要执行的命令或脚本文件路径。
(4)删除任务
crontab --r
(5)查看帮助信息
crontab --h
(6)添加定时任务
crontab --e,进入编辑器,添加要执行的任务。
ps:上述只针对用户级别的定时任务,如需修改系统级别的任务可修改/etc/crontab文件来增添系统级别的任务。
10、date
Date可用来显示或设定系统的日期与时间,显示时可以设定欲显示的格式,格式设定为一个+号后接数个标记(date + '%Y-%m-%d')
11、dirname
从文件路径中获取文件目录。
例如/home/docker/workspace,则获取的是workspace的文件目录。
Linux命令行
ctrl+a:移到行首
ctrl+e:移到行尾
ctrl+u:删除光标左边的所有内容
ctrl+k:删除光标右边的所有内容
ctrl+y:粘贴ctrl+u和ctrl+k的内容
ctrl+l:清空屏幕
ctrl+左右键:左右移动一个单词
ctrl+w:往左删除一个单词
alt+d:往右删除一个单词
ctrl+c:终止命令
VIM操作技巧
熟练常用的vim编辑技巧!
在普通模式下:dw向后删除一个单词
1、搜索
在普通模式下输入/关键字进行查找。
/关键字:正向往下搜索。
?关键字:反向往上搜索。
n 继续搜索下一个匹配单词
N 继续搜索上一个匹配单词
2、撤销与恢复
在命令模式下:
U撤销上一次的操作
Ctrl+r恢复刚才撤销的操作
3、跳转
在普通模式下:输入ngg或nG,n为行号。
在命令模式下:直接输入行号就行。
行间移动:w向后移动一个单词,b向前移动一个单词
4、复制与删除
(1)复制
单行复制:yy是复制所在行,nyy是复制当前行开始的n行。p粘贴在光标的下一行。
多行复制:在命令模式下:开始行,结束行 copy(co) 复制到哪一行开始
(2)删除
在普通模式下:dw删除当前光标后的一个单词
5、删除
删除单行:dd
删除指定行间的内容:startline,endline d,例如删除第三到第五行的数据3,5d。
6、批量替换
进入末行模式。
s/str1/str2 替换当前行的第一个str1为str2
s/str1/str2/g替换当前行的所有str1为str2
m,n s/str1/str2替换m到n行的第一个str1为str2
m,n s/str1/str2替换m到n行的所有str1为str2
1,$s/str1/str2 替换全局的str1为str2