copy

复制文件和文件夹,不会悄悄覆盖已有数据。

文件版本 1.2.6稳定
lil-terminal

概览

copy report.txt backup/report.txt 创建一个独立副本。如果 backup 已是目录,copy report.txt backup 会用原文件名放入其中。只有一个参数时,copy ../backup 会把**当前目录的内容**复制到该目录以外的位置。默认情况下文件名冲突会中止操作;-i 跳过,-r 替换,-c 保留两个版本。

在明确处理冲突的前提下复制

复制前先确认目标路径。copy report.txt backup -c 可产生 report.copy-001.txt 这样的文件名。-r 也可能替换整个已有目录并删除旧内容。安装相应模块后,-a 和 -A 可分别在源文件旁创建 TAR、ZIP 归档。

语法

lil-terminal
copy [options] <dst> · <src> <dst>

参考

copy <dst>

将当前目录内容复制到该目录之外的 <dst>

copy <src> <dst>

将文件或目录复制到 <dst> 或已有目录

copy <src> -a

在源旁创建 <src>.tar @tar

copy <src> -A

在源旁创建 <src>.zip @zip

-i

跳过已存在的项目(而不是报错)

-r

替换现有项目

-c

冲突时创建唯一的 .copy 名称

-f

仅复制文件并保留目录结构

-F

仅复制目录

-a

创建 TAR 归档 @tar

-A

创建 ZIP 归档 @zip

冲突与归档

复制前先确认目标路径。copy report.txt backup -c 可产生 report.copy-001.txt 这样的文件名。-r 也可能替换整个已有目录并删除旧内容。安装相应模块后,-a 和 -A 可分别在源文件旁创建 TAR、ZIP 归档。

目标规则

如果 <dst> 是已有目录,copy 会把源以原名称放入该目录。明确的文件路径表示精确的目标文件。非归档的单参数形式会把当前目录内容复制到 <dst>。

安全性

目录不能复制到自身内部。符号链接会尽可能按链接本身复制,不会递归跟随。

只提供目标路径时,目标必须位于源目录树之外,以免将目录复制到自身内部。复制单独的文件夹时,应明确给出源和目标。

交互式 sandbox 预览

可直接在页面中运行预先准备的示例。结果已预先生成并在浏览器中显示;服务器不会执行任何终端命令。

将文件或目录复制到 <dst> 或已有目录

安装与管理

安装当前兼容版本。完整功能请选择 Base,精简包请选择 Minimum;已安装模块的更新请使用 upgrade。

Base 与 Minimum 是同一当前模块版本的两个包。

Base 包

安装包含本地参考和全部已发布模式的完整包。

install copy
Minimum 包

安装精简包。该包不包含本地参考;help <cmd> -i 会打开当前服务器参考。

install copy -m
精确公开版本

安装这个确切的已发布版本。

install copy -v 1.2.6
检查或升级

让 upgrade 检查兼容性,仅在需要时替换已安装块。

upgrade copy
删除模块

删除扩展块,不影响核心和其他模块。

install copy -u

示例

示例可复制,但网站不会执行。请先检查路径、权限和破坏性选项。

将文件或目录复制到 <dst> 或已有目录
cd \sandbox | copy data/sample.txt tmp/sample.txt | cd tmp
README.txt
current.txt
sample.txt

README.txt
current.txt
sample.txt
将当前目录内容复制到该目录之外的 <dst>
cd \sandbox\data | copy \sandbox\tmp\data-copy
sample.csv
sample.txt
users.json
将文件或目录复制到 <dst> 或已有目录
copy \sandbox\data\sample.txt \sandbox\tmp\sample.txt
目标已存在:\sandbox\tmp\sample.txt
跳过已存在的项目(而不是报错)
copy \sandbox\data\sample.txt \sandbox\tmp\sample.txt -i
tmp/
README.txt
sample.txt
冲突时创建唯一的 .copy 名称
copy \sandbox\data\sample.txt \sandbox\tmp\sample.txt -c
tmp/
README.txt
sample.copy.txt
sample.txt
替换现有项目
copy \sandbox\data\sample.txt \sandbox\tmp\sample.txt -r
tmp/
README.txt
sample.txt
仅复制文件并保留目录结构
copy \sandbox\public \sandbox\tmp\public-files -f
public-files/
assets/
  app.js
  style.css
index.html
仅复制目录
copy \sandbox\public \sandbox\tmp\public-folders -F
public-folders/
assets/
Copy · tar
install tar | copy \sandbox\data -a
已安装 tar, v1.9 (base)

sandbox/
data/
data.tar
Copy · zip
install zip | copy \sandbox\data -A
已安装 zip, v1.8 (base)

sandbox/
data/
data.zip
在源旁创建 <src>.tar @tar
copy \sandbox\data\sample.txt -a
sample.txt.tar

本示例使用的文件: sandbox/data/sample.txt

该示例使用受保护的 /sandbox/ 文档工作区中的文件或目录。

lil-terminal sandbox text file

This file is safe to read, copy, rename, replace, hash and archive.

相关文档

当前公开版本

v1.2.62026-10-31

副本使用 .copy-001、.copy-002 编号

副本使用 .copy-001、.copy-002 编号.