如何使用当前目录重命名目录中的文件

how to rename a file in a directory using current directory

我想重命名文件 (home/Desktop/ali/a/b.txt)

我写了一个bash文件

#!/bin/bash

mv a/b.txt a/c.txt

并将其放在 ali 目录中,我在终端中导航到 ali 目录但是当我执行 bash 文件时它找不到 a/b.txt

我知道 mv home/Desktop/ali/a/b.txt home/Desktop/ali/a/c.txt 可以正常工作,但是有什么方法可以使用当前目录来缩短寻址吗?

如果你想mv一个本地文件,只需将目录留空:

mv a/test.py a/test1.py

无论如何您都可以使用 pwd,但请记住您需要 运行 同一目录中的脚本!

mv `pwd`/a/test.py `pwd`/a/test1.py

如果您在该目录中,则无需提供位置。

例如,您的桌面上有文件 A,因此您导航到那里并执行:

mv A B

文件 A 已在该目录中重命名为 B

但是如果你想从另一个地方这样做,那么你就可以

mv directory/A directory/newfilename

如果你 运行 来自 Ali 目录的脚本那么你的 mv 语句看起来像

mv `pwd`/a/test.py `pwd`/a/test1.py

mv ./a/test.py ./a/test1.py