启动终端复制文件前执行命令

启动终端复制文件前执行命令

会发生什么
我写这行代码是为了将图像复制到我的本地主目录

cp .cache/wallpaper/0_4_1280* .image.jpg

一切都很好……所以我认为如果终端在启动时能做到这一点就太好了。所以我决定把这行放在框中以运行自定义命令而不是 shell……

当然,无论我如何修改行,终端都不会统计目录,并抱怨目录/文件不存在,而我们知道它存在。如果我在框中输入 ls -a,它会显示 .cache 文件夹,但不会进入。

屏幕错误

我开始觉得我的做法完全错误。现在我已经展示了我追求的是什么、我尝试了什么以及发生了什么……

我希望发生什么

当我单击启动终端时,我希望它执行此命令,然后在常规提示符下重新启动。

我认为我需要做的是编写一些简短的 bash 脚本,它将分离 gnome 终端,然后执行复制命令,然后重新启动或重新连接终端窗口。

还有一件事可能是一个问题(可能是阻碍这一切的一件事,我不知道),那就是复制命令中有星号,因为文件会发生变化(它在 .cache 文件夹中),所以第一部分总是相同的,但文件名的其余部分会随着它在 .cache 中的旋转而变化。这就是为什么我要不断地将新图像复制到已知文件名,因为它会发生变化.....我需要引用它。

看起来很容易...但我做不到...我不明白

答案1

实现此目的的一种方法是编辑 .bashrc 文件。

一步步:

  • 运行gedit ~/.bashrc。这将打开 bash 配置文件,该文件会在每次打开终端时运行。

  • 在文件底部添加以下内容:

    # Copy wallpaper to .image.jpg in the home folder.
    cp ~/.cache/wallpaper/0_4_1280* ~/.image.jpg
    

相关内容