scp命令(文件复制)
1.语法:
scp [选项] [源文件] [目标位置]
2.常用选项:
- -r:递归复制整个目录及其子目录
- -P:指定远程主机上的端口号
- -p:保留文件的原始修改时间、访问时间和权限
- -v:详细模式,显示详细的调试信息
- -i:指定要使用的身份验证文件(私钥)
3.示例
- 从本地计算机复制文件到远程计算机:
scp /path/to/local/file username@remote_host:/path/to/destination
- 从远程计算机复制文件到本地计算机:
scp username@remote_host:/path/to/remote/file /path/to/destination
- 从本地计算机递归复制整个目录到远程计算机:
scp -r /path/to/local/directory username@remote_host:/path/to/destination
- 从远程计算机递归复制整个目录到本地计算机:
scp -r username@remote_host:/path/to/remote/directory /path/to/destination
4.注意事项:
通过 scp 进行文件传输时,需要确保本地计算机和远程计算机之间已经建立了相应的 SSH 连接。
如果远程计算机的 SSH 服务使用了非标准的端口号,可以使用 -P 选项指定端口号。
传输过程中可能需要输入远程计算机的登录密码或者私钥的密码,具体要求取决于远程计算机的配置。
grep命令(文本搜索)
1.语法:
grep [选项] 模式 [文件…]
2.常用选项:
- -i:忽略大小写
- -n:显示匹配行的行号
- -v:反转匹配,显示不包含模式的行
- -r:递归搜索子目录
- -w:仅匹配整个单词
- -c:仅显示匹配行的计数
- -l:仅显示包含匹配模式的文件名
3.示例
- 搜索包含关键词 “error” 的行并显示行号:
grep -n 'error' file.txt
- 递归搜索包含关键词 “important” 的行并显示文件名和行号:
grep -rn 'important' /path/to/directory
- 搜索多个文件中包含关键词 “hello” 的行并显示文件名:
grep -l 'hello' file1.txt file2.txt file3.txt
find命令(文件搜索)
1.语法:
find [路径] [表达式]
2.常用选项和参数:
- -name:按照文件名查找,支持通配符*和?
- -iname:不区分大小写地按照文件名查找
- -type:按照文件类型查找,如f(普通文件)、d(目录)、l(符号链接)等
3.示例
- 在 /path/to/dir 目录下递归搜索所有名为 filename 的文件。
find /path/to/dir -name filename
- 在 /path/to/search 目录下递归搜索所有名为 filename 的文件夹(目录)。
find /path/to/search -type d -name "dirname"