好吧,对于一个研究项目,我负责开发一款数字视频游戏,该游戏恰好是通过使用 Unix 和 emacs 形成的(不知道它们是否是同一件事,因为我刚刚开始使用它)。但是,无论如何,我首先尝试使用
cp .ArtTunnel.jpg ../steph
但这当然根本不起作用。我也尝试过使用
cp .ArtTunnel.jpg steph
但这也不起作用。当我尝试其中之一时,它说它不是文件或目录。那么究竟如何将图像从一个目录复制到另一个目录呢?
答案1
如果 ArtTunnel.jpg 不是隐藏文件,则“.”是不必要的。如果文件位于当前目录中(可以使用“ls”命令列出该目录中的所有文件)。命令之前的“提示符”有时会列出当前目录,您也可以使用“pwd”命令列出它。
cp ArtTuneel.jpg ../steph/
如果 steph 比当前目录高一级,则将文件复制到目录 steph。如果 steph 不在当前目录的上一级,则必须使用不同的“路径”来找到它。
Unix\Linux(以下简称*NIX)用户应该有一个包含所有文件的“home”目录,并且可以在命令中将其表示为“~”。例如cp ArtTunnel.jpg ~/Documents/
,将 ArtTunell.jpg 复制到当前用户的 Documents 目录。
使用 ~ 和 .. 为您提供“相对路径”。整个 *NIX 目录结构从“根”目录开始,由一个斜杠表示:/
以斜杠开头的路径是“绝对”路径。对于用户“moi”,主目录的绝对路径通常位于/home/moi。
*NIX 的设计考虑了多个用户,因此文件权限在您可以复制文件的位置、可以查看哪些文件以及是否可以执行程序方面发挥着重要作用。一切都被捕获在“读-写-执行”权限矩阵中。您通常可以在主目录中自由复制。不过要注意权限问题。
man command-name
根据您的情况,可以通过在终端输入 , 来访问一些“在线”文档和手册man cp
。然而 *NIX 手册非常简洁。有时,GNU 项目的“信息”文档提供更多信息。info command-name
根据您的情况,可以通过键入来访问它info cp
。
本教程温和地描述了“cp”命令,但提供了一些很好的细节:https://www.cyberciti.biz/faq/copy-command/。这是更通用的 *NIX 命令教程:http://www.linfo.org/command_line_lesson_1.html。那里也有很好的视频教程。如果您不熟悉 Emacs,它有一个内置教程,您可以通过按 Ctrl+h,然后按“t”来运行。
答案2
cp image-file-path destination path
例如
cp file.jpg /root/home/user/
请确保您对尝试复制文件的文件夹具有读写权限。
ls -ld /destination-directory-path
答案3
这里有两个问题。首先是您的源路径不太可能是正确的。除非文件名实际上以点开头,否则看起来您正在尝试指定当前目录,但未能在句点和文件名之间包含斜杠。
你的第二个问题基本上是相似的,当你说“steph”时,你是在告诉copy创建一个名为“steph”的文件。如果您希望将名为“steph”的现有目录作为目标,则它需要以斜杠结尾。
cp ArtTunnel.jpg ../steph/
请注意,当您从当前文件所在的同一目录执行此命令时,ArtTunnel.jpg 文件名之前不需要“./”。