带 *-通配符的 mv 命令显示错误“没有这样的文件或目录”

dlu*_*dy1 6 command-line mv

我的桌面上有 6 个.txt文件,我正在尝试使用终端移动它们。但是,当我尝试将它们全部移动到texts桌面上的文件夹中时,出现以下错误:

\n\n
mv: cannot stat \xe2\x80\x98Desktop/*.txt\xe2\x80\x99: No such file or directory\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我正在执行的用于执行任务的代码:

\n\n
mv Desktop/*.txt Desktop/texts\n
Run Code Online (Sandbox Code Playgroud)\n\n

我究竟做错了什么?

\n\n
\n\n

另外我目前在~/home/dlundy1

\n\n
\n\n

这里是出ls -al ~/Desktop/*.txt

\n\n
ls: cannot access /home/ubuntu/Desktop/*.txt: No such file or directory\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n\n

** 注意:** 我想掌握仅使用终端来执行基本任务的窍门,以便将解决方案限制为那些不使用 GUI 的解决方案。

\n

小智 1

你先创建目录了吗?如果不,

mkdir Desktop/texts
Run Code Online (Sandbox Code Playgroud)

使用 -p 选项创建缺少的中间目录。

mkdir -p Desktop/texts/DoesNotExist/NotHere/Yet
Run Code Online (Sandbox Code Playgroud)

您也没有提到您当前所在的路径,默认情况下,终端会话在您自己的主目录中启动,但要确保您可以使用完整路径或 来~指示您的主目录。~扩展以填充主目录路径的其余部分。

确定目的地存在后,

mv ~/Desktop/*.txt ~/Desktop/texts
Run Code Online (Sandbox Code Playgroud)

因为〜,它与使用相同,

mv /home/dlundy1/Desktop/*.txt /home/dlundy1/Desktop/texts
Run Code Online (Sandbox Code Playgroud)


nux*_*nux 0

你应该写下以下内容

mv ~/Desktop/*.txt ~/Desktop/texts
Run Code Online (Sandbox Code Playgroud)

您忘记了~表示您的主目录。

  • 我假设他不在他的主目录中,因为如您所见,错误是“Desktop/*.txt”:没有这样的文件或目录 (2认同)