Skip to content

Commit 3cee78a

Browse files
committed
doc: add docs/ftp.md #596
1 parent 742c4b0 commit 3cee78a

File tree

3 files changed

+142
-2
lines changed

3 files changed

+142
-2
lines changed

Diff for: README.md

+1
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@ Quick Reference
178178
[Taskset](./docs/taskset.md)<!--rehype:style=background: rgb(99 99 99);-->
179179
[tar](./docs/tar.md)<!--rehype:style=background: rgb(215 89 62);&class=tag&data-lang=解压缩-->
180180
[Zip](./docs/zip.md)<!--rehype:style=background: rgb(99 99 99);&class=tag&data-lang=解压缩-->
181+
[FTP](./docs/ftp.md)<!--rehype:style=background: rgb(99 99 99);-->
181182
<!--rehype:class=home-card-->
182183

183184
## 工具箱

Diff for: docs/ftp.md

+134
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
ftp 备忘清单
2+
===
3+
4+
此 ftp 备忘清单包含命令和使用 ftp 脚本实现自动化的技巧示例。
5+
6+
入门
7+
----
8+
9+
### 介绍
10+
11+
<!--rehype:wrap-class=col-span-2-->
12+
13+
- FTP 命令允许用户通过FTP(File Transfer Protocol)协议在本地计算机和远程服务器之间传输文件。
14+
- FTP 是一种在网络上交换文件的标准协议,是 ARPANet 的标准文件传输协议,ARPANet 网络就是现今 Internet 的前身。
15+
- 使用 FTP 协议时,一方充当客户端,另一方充当服务器,客户端可以上传、下载、删除、重命名文件和目录,以及执行其他文件传输相关的操作。
16+
17+
### 选项
18+
<!--rehype:wrap-class=row-span-3-->
19+
20+
```bash
21+
ftp -v ftp.example.com
22+
```
23+
24+
`-v`:启用或禁用详细模式。在详细模式下,`ftp`命令会显示所有来自服务器的响应消息。默认情况下,该选项为开启状态。
25+
26+
```bash
27+
ftp -d ftp.example.com
28+
```
29+
30+
`-d`:启用调试模式。该选项会显示所有FTP传输过程中发送和接收到的命令,有助于调试连接问题。
31+
32+
```bash
33+
ftp -n ftp.example.com
34+
```
35+
36+
`-n`:禁止自动登录。默认情况下,`ftp`命令会在连接到远程服务器后尝试自动登录。使用该选项可以禁止该行为,通常与`.netrc`文件联合使用。
37+
38+
```bash
39+
ftp -g ftp.example.com
40+
```
41+
42+
禁用文件名通配符扩展。`ftp`命令默认会展开文件名中的通配符。使用该选项可以关闭这一行为。
43+
44+
```bash
45+
ftp -p ftp.example.com
46+
```
47+
48+
`-p`:使用被动模式(PASV)进行数据连接。被动模式在客户端位于防火墙或NAT后面时非常有用。
49+
50+
```bash
51+
ftp -s:script.txt ftp.example.com # Windows
52+
ftp -n ftp.example.com < script # Linux
53+
```
54+
55+
:warning: Windows 上使用`-s`选项指定`script.txt`脚本执行 ftp 命令。Linux 上可以使用重定向实现。
56+
57+
### 目录操作
58+
59+
| 命令 | 描述 |
60+
| -------------------- | -------------------------- |
61+
| `cd` | 更改当前工作目录到指定目录 |
62+
| `ls``dir` | 列出当前目录下的内容 |
63+
| `pwd` | 显示当前目录的绝对路径 |
64+
| `mkdir` | 创建目录 |
65+
| `rmdir` | 删除一个目录 |
66+
| `rename <old> <new>` | 重命名一个目录 |
67+
68+
### 快速开始
69+
70+
<!--rehype:wrap-class=row-span-2-->
71+
72+
使用匿名模式访问远程 FTP 服务器
73+
74+
```bash
75+
ftp ftp.example.com
76+
```
77+
78+
ftp 会启动交互式命令行
79+
80+
```bash
81+
Connected to <host> (<ip address>).
82+
220 (vsFTPd 3.*)
83+
# 需要手动输入 anonymous
84+
Name (192.168.10.10:root): anonymous
85+
331 Please specify the password.
86+
Password: # 匿名模式下直接回车
87+
230 Login successful.
88+
Remote system type is UNIX.
89+
Using binary mode to transfer files.
90+
```
91+
92+
连接成功后进入交互式会话.
93+
94+
查看所有命令,使用 `helm``?`
95+
96+
```bash
97+
ftp> help
98+
# 或者
99+
ftp> ?
100+
```
101+
102+
### 文件操作
103+
104+
| 命令 | 描述 |
105+
| ---------------------- | -------------------- |
106+
| `get <remote> <local>` | 下载一个文件到本地 |
107+
| `mget` | 下载多个文件到本地 |
108+
| `put <local> <remote>` | 上传一个文件到服务器 |
109+
| `mput` | 上传多个文件到服务器 |
110+
| `delete <remote>` | 删除一个文件 |
111+
| `rename <old> <new>` | 重命名一个文件 |
112+
113+
脚本
114+
----
115+
116+
### 样例
117+
118+
<!--rehype:wrap-class=col-span-3-->
119+
120+
以匿名登录为例,将下列脚本代码放入文件 `script` 中:
121+
122+
```bash
123+
user anonymous "\n" # 匿名用户
124+
binary # 将文件传输模式设置为二进制模式,这对于非文本文件(如图片、压缩文件等)来说是必要的,以确保文件在传输过程中不会被更改。
125+
ls <dir> # 进入某个目录
126+
pwd # 输出当前路径
127+
quit # 退出 ftp 连接
128+
```
129+
130+
使用 `ftp` 命令执行脚本文件:
131+
132+
```bash
133+
ftp -n ftp.example.com < script # 使用 -n 选项禁止自动登录,这样会继续执行 user 指令,而不是启动交互式命令行。
134+
```

Diff for: docs/r.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,16 @@ data(iris)
4949

5050
### 工作目录
5151

52+
查找当前工作目录(其中找到输入并发送输出)
53+
5254
```r
5355
getwd()
54-
# 查找当前工作目录(其中找到输入并发送输出)
56+
```
57+
58+
更改当前工作目录
59+
60+
```r
5561
setwd(‘C://file/path’)
56-
# 更改当前工作目录
5762
```
5863

5964
使用 RStudio 中的项目来设置工作目录到您正在使用的文件夹

0 commit comments

Comments
 (0)