转自:http://bbs.feng.com/forum.php?mod=viewthread&tid=10999057&page=1&authorid=11765542
一直寻求在MAC上能够对NTFS格式移动硬盘进行读写操作,一般用paragon *ntfs *for mac 或者 tuxera ntfs for mac,但是需要100+大洋,而且只能一机一码,不划算(吊丝心态 哈哈哈)。最近在威锋上看到有大神自己写了个shell脚本,能够实现NTFS格式移动硬盘进行读写操作,亲测可用,转帖分享下。
#!/bin/bash
dev=`df|tail -1`
volume=`echo ${dev##*% }|sed 's/\ /\\\ /g'`
dev=${dev%% *}
diskutil info $dev|grep NTFS>/dev/null
if [ $? -ne 0 ] ; then
echo "最近挂载的磁盘:$volume 不是 NTFS 磁盘! 按 Return 键退出"
read
else
diskutil umount $volume>/dev/null
echo "请输入用户 ${USER} 的密码"
sudo mkdir $volume
sudo mount -t ntfs -o rw,auto,nobrowse $dev $volume>/dev/null 2>&1
if [ $? -ne 0 ] ; then
#ref:http://apple.stackexchange.com/a/170011
echo "磁盘需要在Windows上经过检查、修复才能挂载为可写!"
echo "按 Return 键退出"
sudo umount $volume>/dev/null 2>&1
sudo rm -r $volume
read
exit
fi
open $volume
echo "按 Return 键卸载 $volume"
read
until sudo umount $volume
do
echo "请先关掉正在占用 $volume 的程序,然后按 Return 键卸载 $volume"
read
done
fi
exit
将上面的代码存到一个文本文件中,给文件起个名,比如:ntfs.sh。然后将 ntfs.sh 保存到spotlight能够搜到的地方,比如“应用程序”文件夹。然后打开“终端”应用,执行如下命令:
chmod +x /Applications/ntfs.sh #给“应用程序/ntfs.sh"加可执行权限
用法:每次新插入ntfs磁盘、u盘时,在spotlight中搜索文件名 ntfs.sh,选中 ntfs.sh 回车运行。
原理:判断最新插入的存储设备是否ntfs分区格式,若是则调用mac原生ntfs驱动,挂载成可写分区。
注意:
1.磁盘名称不能有空格!
** 2.若提示:**磁盘需要在Windows上经过检查、修复才能挂载为可写!是因为磁盘经受过强制拔出,导致文件系统变脏,不能挂载为可写。解决办法:直接拔下磁盘,找个Windows电脑或虚拟机,使用Windows自带的磁盘工具检查并修复磁盘。
个人使用情况:
本人没有将这个脚本加入到“应用程序”,而是直接执行sh命令
cd xxxx #ntfs.sh文件存放目录
#执行下面命令:
sh ntfs.sh
如果用上面的脚本复制视频后,有时会出现:项目“XXX”已被 OS X 使用,不能打开——解决办法 的情况 的弹出框
解决办法:
http://blog.sina.com.cn/s/blog_a438e5290102w3ow.html