如何使用 Linux 终端复制文件和目录
我们可以使用 Linux Terminal 中的 cp
和 rsync
命令复制文件和目录。cp
命令一般用于复制文件,而 rsync
命令一般用于复制目录。
使用 cp
命令复制文件
我们在 Linux 和 Unix 操作系统中使用 cp
命令来复制文件和目录。
要将文件 abc.txt
的内容复制到另一个文件 backup.txt
中,我们使用以下命令。
cp abc.txt backup.txt
它将 abc.txt
中的内容复制到 backup.txt
中。这里两个文件都必须在当前工作目录下。
如果目标文件已经存在,目标文件的内容将被覆盖。
我们可以在 cp
命令中加入 -i
标志,在复制前得到确认提示。
cp -i abc.txt backup.txt
输出:
cp: overwrite 'backup.txt'?
如果我们想复制文件,我们按 Y
键并按 Enter。
要了解使用 cp
命令所做的事情,我们可以使用 cp
命令的 -v
标志。
cp -v abc.txt backup.txt
输出:
'abc.txt' -> 'backup.txt'
它显示了 abc.txt
的内容正在被复制到 backup.txt
中。
使用 cp
命令复制文件到一个目录
要将一个文件复制到一个目录,我们使用 cp
命令。cp
命令的第一个参数是要复制的文件名,第二个参数是需要复制的文件所在目录的绝对路径或相对路径。
cp abc.txt ./test
它将当前工作目录中的文件 abc.txt
复制到当前工作目录 test
的文件夹中。
如果要将特定目录下的文件复制到与父文件不同的目录下,我们可以将文件的名称指定为。
cp abc.txt ./test/test.txt
它将文件 abc.txt
复制到文件夹 test
中,文件名为 test.txt
。
复制多个文件
我们可以使用 cp
命令将多个文件和目录复制到一个特定的目录中,指定所有源文件和目录,并在最后指定目标目录。
cp abc.txt backup.txt test backup
这将把文件 abc.txt
和 backup.txt
以及文件夹 test
复制到文件夹 backup
中。
cp
命令还可以进行模式匹配。
cp *.txt backup
这将当前工作目录中所有扩展名为 .txt
的文件复制到 backup
文件夹中。
使用 cp
命令复制目录
我们使用 -r
或 -R
标志与 cp
命令一起复制目录及其子目录和文件到目标目录。
cp -r pp Project
它将整个 pp
目录及其子目录和文件复制到目标目录 Project
中。
在这个例子中,在 Project
目录中会有一个 pp
目录。
然而,如果我们只想复制文件和子目录,我们使用 -T
标志和 -R
标志。
cp -RT pp Project
它将 pp
目录的子目录和文件复制到目标目录 Project
中。
使用 rsync
命令复制文件和目录
rsync
是一个命令行工具,用于在两个主机之间同步文件和目录。如果源路径和目的路径都代表本地主机,rsync
命令就像复制命令一样。
rsync -a abc.txt backup.txt
它将 abc.txt
的内容复制到 backup.txt
中。
在这里,-a
标志说明在复制时保留符号链接、修改时间、组、所有权和权限。
同样,我们也可以将一个目录复制到另一个目录中。
rsync -a /abc /backup-abc
它将目录 abc
的内容复制到目标目录 backup-abc
中。
在这里,如果我们省去后面的斜杠/
,那么源目录就会被复制到目标目录里面。
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn