【问题标题】:Move macOS directory with Bash使用 Bash 移动 macOS 目录
【发布时间】:2018-10-23 13:39:32
【问题描述】:

我的帮助台团队中的一位同事在我的 MacBook 上测试了一个重定向脚本,该脚本将我的主文件夹移动到我的 Box Sync 文件夹中,以将这些文件夹同步到云端。

他运行的脚本摘录如下:

#!/bin/bash

home="/Users/$USER"

sudo mv $home/Documents $home/Box\ Sync/ && ln -s $home/Box\ Sync/Documents $home/Documents

我对 Bash 的了解有限。我想将目录移动到主文件夹中的默认位置(例如:/Users/$USER/Documents)。

以下是正确的方法吗?

#!/bin/bash

home="/Users/$USER"

sudo mv $home/Box\ Sync/Documents $home/Documents

看起来很简单,但我不知道是否应该对原始脚本中的ln -s 位做任何事情。我相信这就是将原始位置与新位置联系起来的原因。如果我错了,请纠正我。

【问题讨论】:

    标签: bash macos directory


    【解决方案1】:

    您对链接的看法是正确的。它只是从 Box Sync 文件夹创建了一个返回 $home/Documents 的链接,因此 OSX (MacOS) 中使用 Documents 的其他东西仍然可以工作。

    按原样移动只会覆盖软链接 (ln -s) 并产生您需要的结果。

    如果你想不合理的安全,你可以运行:

    rm $home/Documents

    首先。如果它已经是一个目录,它不会在没有-r 的情况下删除它 标志。

    【讨论】:

    • 运行将目录移回主文件夹的命令返回了无效参数。似乎它不想覆盖软链接。我首先删除了通过rm 删除的软链接,然后再次运行该命令,它工作正常。谢谢!
    • 仅供参考,我试过rm && mv,它也不喜欢它。我想这些命令必须单独运行。
    猜你喜欢
    • 2014-09-17
    • 2022-08-09
    • 2013-10-20
    • 2014-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多