移动“图片”,“文档”,“电影”等文件夹


23

我想将“图片”,“文档”,“电影”之类的文件夹移动到不同于用户主目录根目录下的默认文件夹,最好移至同一用户主文件夹下的子文件夹。例如,用户/音乐将转到用户/资料/音乐。

我宁愿不创建到移动文件夹的符号链接,而是完全改变系统的行为,因此它知道在哪里可以找到那些文件夹。

请记住,我不想移动用户的主文件夹,例如,仅将它们移动到/ Users / [用户名] / stuff /,因为我不希望他们污染那里的主文件夹。


最好的方法是完全移动整个主目录。这样做是为了释放我的SSD上的一些空间-效果很好。

1
谢谢Dan,但是我实际上并不想移动我的主文件夹,只是我提到的那些,我希望将它们放在“文档”或其他文件夹下,而该文件夹又位于用户的家下面。我真的不喜欢这些文件夹如何污染其存在的主目录。
艺术

1
如果您不喜欢它们的存在并且不使用它们,请发出chflags hidden <folder>将它们中的任何一个隐藏在Finder中的命令。当然,这不会移动它们,但是例如,我想隐藏Public文件夹。

我确实想继续使用它们,Dan,尽管移动它们。
艺术

Answers:


12

艺术,

您的工作成功了吗?

您是否尝试过使用以下方式隐藏文件夹:

chflags hidden ~/Documents 

然后创建指向它的链接,例如(在Terminal中):

cd ~
mkdir stuff
cd stuff
ln -s ~/Documents

我相信这会将Finder中的〜/ Documents文件夹隐藏起来,但是仍然存在,因此任何写入操作都可以。此外,您还会在〜/ stuff中看到链接...


听起来确实很有希望,谢谢您,我会试一试!
艺术

尽管在'ls -la'之后的终端中仍然可以看到它们,但很高兴您建议使用此解决方案,该解决方案将为我解决大约90%的情况。谢谢!
艺术

1
完美,谢谢。如果您可以以某种方式重命名它们,那仍然会更酷...如果默认文件夹名称以小写字母开头,我可能会保留它们。
内森海滩

1
这不会对ls隐藏。那怎么办?
伊万·佩雷斯

取消隐藏:chflags nohidden ~/Documents
Dennis Golomazov

8

我个人使用符号链接将所有这些目录移到我的用户帐户下。我以root用户身份登录,并将所有目录“文档的下载”,“电影”等链接在一起,然后将其移至外部驱动器。

Mac OS可以很好地看到所做的更改,并自动将其指向这些目录(在外部驱动器上),并且这样做没有问题。

有一个称为的系统服务SymbolicLinker,它将在您的上下文菜单中添加一个选项,该选项将为您创建符号链接。

在此处输入图片说明

如何启用root用户

OS X狮子

  1. 从Apple菜单中选择“系统偏好设置”。
  2. 从查看菜单中选择用户和组。
  3. 单击锁并以管理员帐户身份验证。
  4. 单击登录选项...。
  5. 单击右下角的“编辑...”或“加入...”按钮。
  6. 单击“打开目录实用程序...”按钮。
  7. 单击目录实用程序窗口中的锁。
  8. 输入管理员帐户名和密码,然后单击“确定”。
  9. 从“编辑”菜单中选择“启用根用户”。
  10. 在“密码”和“验证”字段中输入要使用的根密码,然后单击“确定”。

Mac OS X v10.6.x

  1. 从Apple菜单中选择“系统偏好设置”。
  2. 从查看菜单中选择帐户。
  3. 单击该锁并使用管理员帐户进行身份验证。
  4. 单击登录选项...。
  5. 单击右下角的“编辑...”或“加入...”按钮。
  6. 单击“打开目录实用程序...”按钮。
  7. 单击目录实用程序窗口中的锁。
  8. 输入管理员帐户名和密码,然后单击“确定”。
  9. 从“编辑”菜单中选择“启用根用户”。
  10. 在“密码”和“验证”字段中输入要使用的根密码,然后单击“确定”。

这是一个很酷的把戏。我只是认为,如果您可以为不太熟练的用户扩展一点,那就更好了?有关如何启用root帐户的链接,有关如何启动此系统服务的说明将大有帮助。

1
下载服务扩展时,将提供有关安装方法的说明。基本上,你只要复制SymbolicLinker.service/Library/Services/,然后注销并重新登录。
WrightsCS

编辑的答案,其中包含有关如何为root用户和Lion启用root用户的说明。
WrightsCS 2011年

答案写得好,但我必须与其他用户同意,您将因为某些充分的理由而对Mac OS X感到不满意,并且可能不必要地使系统的结构复杂化。请考虑一下:现在,Time Machine是否已将这些文件夹及其内容备份到另一个硬盘驱动器上?您最好确认一下。

2
@WheatWilliams是的,实际上,Time Machine为我很好地备份了这些目录。
WrightsCS 2011年

5

您可以按照以下步骤移动整个用户帐户(主)文件夹:

  1. 在系统偏好设置中单击用户和组。
  2. 解锁窗格(锁定图标)。
  3. 右键单击您选择的用户,然后从列表中选择“高级”选项。
  4. 以下屏幕将为您打招呼:

在此处输入图片说明

从那里,只需选择要将配置文件重新定位到的“主目录”,然后重新启动。

注意:这将移动在(下载,文档,音乐等)下找到的所有内容/Users/{your user}/


@chsum:您确定文档,图片等的实际内容已移动吗?我假设OSX只是在指定的位置创建了一个新的主目录结构,之后内容必须由用户自己移动。
nohillside

cksum,从我阅读问题的方式来看,提问者不希望移动其整个主文件夹目录或用户帐户。他想保留自己的主目录,但出于磁盘空间原因,将某些系统定义的子文件夹从其主文件夹下移至远程卷或其主文件夹外的其他位置。

2
只要确保您确实要保留内容,首先将主文件夹复制到您喜欢的任何位置,然后更改此设置以匹配新位置。仅更改此设置不会复制任何文件-您将再次开始清理。

另外,如果新位置是其他驱动器,请确保另外注册一个紧急管理员帐户,以防主文件夹所在的新驱动器出现故障。
Fomite 2011年

谢谢cksum,但是我不想移动我的主文件夹,只想移动这些文件夹-我只是不希望它们直接放在用户家下面。
艺术

4

好吧,简短的答案是:不要,因为太多的事情取决于它。这也是Apple选择使重命名这些文件夹变得困难的原因。

无论如何,如果您想冒险,这个关于某个相关问题的答案应该会给您一些想法。


我对此答案+1了,但我还必须说我完全同意。我理解您的愿望,但这是一个坏主意,并且可能几乎是不可能的,因为操作系统会以任何方式重新创建它们,除非您陷入不必要的麻烦之中。
TJ Luoma

我可以不同意吗?我只是使用此引用无缝移动了我的主文件夹, 因此可以节省SSD驱动器上的空间。是的,您不能移动单个文件夹,但是您的帖子听起来好像很难移动整个主文件夹,而实际上却并非如此。

如果由于某种原因我还没有看到它-有一种方法可以使您灵活使用这些名称-例如在Windows中,您始终可以使用别名(例如,%System%等)来引用这些文件夹。给我苹果标志。
艺术

Dan,移动整个主文件夹很容易(正如在另一个答案中已经指出的那样),但是重命名特定的文件夹名称(这似乎是最初的问题)并非易事。
nohillside

6
如果可以的话,我会-100这个答案。在我的计算机上,我可以做任何我想做的事!包括删除无用的目录。
devin

2

您可以尝试将以下Bash代码添加到〜/ .bash_profile中。它ls在运行时更改命令$HOME以不显示某些文件夹(“音乐”,“电影”,“图片”等)。

所有这一切都是更改目录中ls显示的内容$HOME。它实际上并没有删除文件夹。例如,如果您这样做,ls -l您将看到文件夹仍然在那里。

function ls-home() {
        excludeDirectories=(
        "Music"
        "Movies"
        "Pictures"
        "Public"
        "Documents"
        "Desktop"
        "Downloads"
        "VirtualBox VMs"
        )

        files=$(comm -23 <( /bin/ls -1) <(printf '%s\n' "${excludeDirectories[@]}" | sort))

        temporary_dir=$(mktemp -d)

        for file in $files; do
                if [ -h $file ]; then
                        ln -s $file $temporary_dir/$file
                elif [ -f $file ]; then
                        touch $temporary_dir/$file
                        if [ -x $file ]; then
                                chmod +x $temporary_dir/$file
                        fi
                else
                        mkdir $temporary_dir/$file
                fi
        done

        /bin/ls $temporary_dir
        rm -rf $temporary_dir
}

function ls-shim() {
        if [ "$(pwd)" = "$HOME" ]; then
                lastArgument="${@:-1}"
                if [ "${lastArgument:0}" = 1 ];  then
                        ls-home
                else
                        /bin/ls "$@"
                fi
        else
                /bin/ls "$@"
        fi
}

alias ls="ls-shim"

运行中的脚本的屏幕截图: 行动中的'ls'垫片 常规的“ ls”


您可以添加一些有关脚本功能的解释吗?
nohillside

我无法撤消我的投票。对于任何未来的访问者:此脚本无法按预期运行。
Newb

@Newb谢谢您的评论,今天我来看一下
罗伯特

@Newb脚本对我来说很好用,您能详细解释一下您的问题吗?您是如何安装的?
罗伯特

0

只要将它们移动到您喜欢的位置即可。唯一重要的一个是库,其余的通常可以选择应用放置内容的位置。

只有少数糟糕的应用程序不允许您更改其编写内容的位置,因此Microsoft和Adobe应用程序就浮现在脑海。他们会将文件放在〜/ Documents中。其余所有文件都可以使用,无论它们放在何处。


恐怕我不够清楚-我不想将文件夹移动到其他驱动器,而只是希望它们不在主文件夹的根目录下(例如,隐藏在“ Apple junk”文件夹下)
Art

0

我不建议您移动整个主文件夹,而是最好将文件夹的符号链接建立到外部驱动器。之后,您将获得:

  1. 灵活性-如果外部HD发生故障(请记住,如果HDD发生故障,则隐藏的Library文件夹位于主驱动器上,则您也需要做一些事情,因为它也将发生故障),您将能够在此时立即开始对其进行修复没有关闭它。
  2. 如果您的主驱动器是SSD,则当主文件夹位于主驱动器上时,加载速度更快,而主文件夹位于外部驱动器上时。
  3. 如果您使用Mac Pro,则可以将电影文件夹设置为一个高清,将音乐文件夹设置为另一个高清...

1
抱歉,这个答案与原始问题有很大的关系。我特别不想移动主文件夹或创建符号链接。
艺术

除了我同意,它仍然为讨论增加了价值
Asier 2015年

0

我在扩展插槽中添加了Transcend 256G驱动器,并尝试了此过程,但未移动数据。它DID创建了一个新的配置文件,所有文件夹都重新定位到扩展驱动器,但是我必须将所有数据从内部SSD手动移动到新位置。最终我得到了想要的东西,但是我不得不重新创建整个配置文件(Outlook电子邮件帐户,首选项等)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.