gpt4 book ai didi

linux - 有条件地执行 .bashrc 命令

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:33 26 4
gpt4 key购买 nike

我想将我的 Google 云端硬盘连接到我的本地计算机 (linux),以便我可以通过我的终端访问它。

谷歌搜索后,我看到我可以安装 google-drive-ocamlfuse 来执行此操作。

当我启动我的机器时,我必须输入:

google-drive-ocamlfuse ~/google-drive

挂载 Google 云端硬盘。

为了避免每次都这样做,我将这行添加到我的 .bashrc 中。哪个工作正常。但是随后我打开的每个后续终端都会尝试运行该行,并且我收到消息:

fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option

我想我收到此消息是因为它正在尝试安装已安装的东西。有什么办法可以让我的 .bashrc 中的这一行仅在终端第一次在 session 中打开时才执行。或者我可以通过其他方式停止警告?

没什么大不了的,但如果能学到一些东西会很好。

最佳答案

尝试将此命令放入启动文件中:

mountpoint ~/google-drive || google-drive-ocamlfuse ~/google-drive

mountpoint 测试它的参数是否是一个挂载点。如果不是,则 mountpoint 返回 false 并触发 || 执行第二个命令。

mountpoint 是 util-linux 实用程序集合的一部分。

您可以将此命令放在您的 shell 启动文件之一中,但最好将它放在系统启动文件之一中。根据您的发行版,该文件可能是 /etc/rc.local

条件执行的替代形式

如果您愿意,可以使用 if-then 语句执行条件执行:

if ! mountpoint ~/google-drive
then
google-drive-ocamlfuse ~/google-drive
fi

这里,! 否定 mountpoint 的退出代码,以便 google-drive-ocamlfuse 仅在 mountpoint 返回 false 时执行。

关于linux - 有条件地执行 .bashrc 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45525638/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com