前几天我们学会了如何 cd 和 ls 在一个命令中. 今天我们将看到另一个很酷的 Bash 技巧—— cp
或者 mv
和 cd
在一个命令中。 含义 – 我们要将文件/目录从一个位置复制或移动到另一个位置,然后 cd
立即进入目标目录。 当然,我们可以用 单线 命令。 例如,可以使用以下命令将文件/目录复制或移动到另一个目录并 cd 到目标目录:
cp source destination && cd destination
或者,
mv source destination && cd destination
但是,我们现在不打算这样做。 我们使用一个简单的 bash 功能 结合 cp 或 mv 命令和 cd 命令并将其作为单个命令运行。 这个技巧应该适用于所有支持 BASH 的类 Unix 系统。
如何在一个命令中 cp 或 mv 和 cd
打开你的 ~/.bashrc
文件在您最喜欢的编辑器中:
$ nano ~/.bashrc
在最后添加以下几行:
#cp and cd in one command cpcd (){ if [ -d "$2" ];then cp $1 $2 && cd $2 else cp $1 $2 fi } #mv and cd in one command mvcd (){ if [ -d "$2" ];then mv $1 $2 && cd $2 else mv $1 $2 fi }
Save 和 close 文件。 运行以下命令使更改生效。
$ source ~/.bashrc
现在将文件/目录从一个位置复制或移动到另一个位置,您将自动到达目标位置。
让我们制作一些示例目录和文件。
$ mkdir dir1 dir2
$ touch file1 file2
现在使用命令将 file1 复制到 dir1:
$ cpcd file1 dir1
$ pwd /home/sk/dir1
如您所见,上面的命令复制了 file1
到 dir1
然后自动 cd
进入 dir1
地点。
下一步行动 file2
到 dir2
使用命令:
$ cd
$ mvcd file2 dir2
$ pwd /home/sk/dir2
此命令复制 file2
到 dir2
它会自动 cd
进入 dir2
地点。
示例输出:
希望这可以帮助。
其他 Bash 技巧
- 在 Linux 中重命名文件而无需两次输入全名
- 用于提取各种类型文件档案的 Bash 函数
BASHBash 函数Bash 技巧LinuxLinux 命令Shell