XSplit生成批处理文件的文件用什么处理?

1174人阅读
最近新配了台主机,在老板的极力推荐下,上了块 SSD 当系统盘,那速度,果真是一个大四个叉,爽!!!
上网查了查,发现使用 SSD 还有不少讲究,主要目的是为了延长硬盘的使用寿命,其中有关转移用户配置文件并利用 mklink 命令进行文件夹链接的文章引起了我的兴趣。由于以前 N 次重装系统留下的备份文件实在太乱,而且重复的文件太多,所以准备仔细整理一番,然后用 mklink 将用户文件设置到其它盘去。经过几天的折腾,终于成功将&C:\Users 中的用户文件夹给链接到了 D 盘了,其间发生了各种状况,在此和大家分享下经验和教训。
折腾之前,先普及下基础知识:
Windows (Vista/Win7/Win8) 自带的 mklink 命令可以设置文件和文件夹链接,也叫接合点或解析点,可以通过 dir /a:l 进行查看。
如图中所示,文件或文件夹前具有 &JUNCTION& 标记的,就是接合点。
Junction:连接点或接合点,图标类似快捷方式,当用户对其进行访问时,读写操作实际上是附加在接点所指向的文件或文件夹上的。
比如:Win7 中的 &C:\Documents and Settings&,用户目录中的 &Application Data&、&My Documents& 等。
mklink 是用来创建 Junction 的命令,具体使用方法请参考:、&和&
好吧,Let's 折腾
本文以 Administrator 作为示例用户,要做的就是将用户配置目录 C:\Users\Administrator 链接到 D:\Admin。
操作共分3个步骤:
1、用 WinPE 复制 C:\Users\Administrator 文件夹到 D:\Admin 中。
我的系统是 Win8,曾使用 robocopy 命令来复制用户目录,不幸的是未能成功:
robocopy &C:\Users\Administrator& &D:\Admin& /copyall /e /xj
总结下失败的原因:
a、本打算偷懒,将 Administrator 中的 Junction 一起复制到 D 盘,所以去掉了 /xj 参数。后果是出现了循环复制,原来 Application Data 指向的目录存在循环引用。仔细想想,因为移动了 Administrator 文件夹,原有 Juncation 的目标也就失效了,所以必须添加 /xj 参数。
b、加上 /xj 参数后,复制成功,但提示有的文件夹无访问权限,不过我没理会。事实证明,这是不对的,因为复制完成后,C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Libraries&无权删除,这还让我怎么建立 Junction 啊~~
c、利用系统自带的用户配置文件管理进行复制、删除,也出现了无权访问的状况&
d、据说安全模式可以搞定,可 Shift+F8 都按陷下去了,也没能进入 Win8 的安全模式,真尼玛丢人啊!
最终我还是选择了 WinPE 环境复制配置文件,而且一次搞定。
友情提醒:
Windows 8 OS,建议用 Administrator 帐号登录系统,并点开应用商店逛逛,是否下载应用倒无所谓,否则,折腾完后你会惊喜的发现无法从应用商店中安装应用了!
2、重命名 C:\Users\Administrator 和 D:\Administrator 文件夹。
为了保险起见,C:\Users\Administrator 文件夹不要删除,可以重命名为 Administrator.BAK
D:\Administrator 重命名为 Admin
3、利用 mklink 建立文件夹链接:
mklink /j &C:\Users\Administrator& &D:\Admin&
注:在 WinPE 中也能使用 mklink 命令,可由于缺少环境变量的设定,所以进入系统目录才能执行。
4、在 D:\Admin 文件夹中建立如 &Application Data&、&Cookies&&等 Junction
让我们用 dir /s /a:l 命令查看下 Administrator 文件夹中的所有 Juncation:
由于目录中的 Junction 比较多,而且分散在不同的子目录中,所以我编写了一个批处理来完成这项工作。为了和原用户目录中的 Junction 保持一致,又在批处理中增加了 attrib 和 icacls 命令,作用是分别为这些 Junction 设置系统、隐藏等属性,并添加了拒绝用户访问的权限。
上脚本咯~~!
rem mklink
mklink /j &Application Data& &AppData\Roaming&
mklink /j &Cookies& &AppData\Roaming\Microsoft\Windows\Cookies&
mklink /j &Local Settings& &AppData\Local&
mklink /j &My Documents& &Documents&
mklink /j &NetHood& &AppData\Roaming\Microsoft\Windows\Network Shortcuts&
mklink /j &PrintHood& &AppData\Roaming\Microsoft\Windows\Printer Shortcuts&
mklink /j &Recent& &AppData\Roaming\Microsoft\Windows\Recent&
mklink /j &SendTo& &AppData\Roaming\Microsoft\Windows\SendTo&
mklink /j &Templates& &AppData\Roaming\Microsoft\Windows\Templates&
mklink /j &「开始」菜单& &AppData\Roaming\Microsoft\Windows\Start Menu&
mklink /j &AppData\Local\Application Data& &AppData\Local&
mklink /j &AppData\Local\History& &AppData\Local\Microsoft\Windows\History&
mklink /j &AppData\Local\Temporary& Internet Files &AppData\Local\Microsoft\Windows\Temporary Internet Files&
mklink /j &AppData\Roaming\Microsoft\Windows\Start Menu\程序& &AppData\Roaming\Microsoft\Windows\Start Menu\Programs&
mklink /j &Documents\My Music& &Music&
mklink /j &Documents\My Pictures& &Pictures&
mklink /j &Documents\My Videos& &Videos&
rem attrib
attrib +s +h +i &Application Data&
attrib +s +h +i &Cookies&
attrib +s +h +i &Local Settings&
attrib +s +h +i &My Documents&
attrib +s +h +i &NetHood&
attrib +s +h +i &PrintHood&
attrib +s +h +i &Recent&
attrib +s +h +i &SendTo&
attrib +s +h +i &Templates&
attrib +s +h +i &「开始」菜单&
attrib +s +h +i &AppData\Local\Application Data&
attrib +s +h +i &AppData\Local\History&
attrib +s +h +i &AppData\Local\Temporary&
attrib +s +h +i &AppData\Roaming\Microsoft\Windows\Start Menu\程序&
attrib +s +h +i &Documents\My Music&
attrib +s +h +i &Documents\My Pictures&
attrib +s +h +i &Documents\My Videos&
rem icacls
icacls &Application Data& /deny Everyone:(S,RD)
icacls &Cookies& /deny Everyone:(S,RD)
icacls &Local Settings& /deny Everyone:(S,RD)
icacls &My Documents& /deny Everyone:(S,RD)
icacls &NetHood& /deny Everyone:(S,RD)
icacls &PrintHood& /deny Everyone:(S,RD)
icacls &Recent& /deny Everyone:(S,RD)
icacls &SendTo& /deny Everyone:(S,RD)
icacls &Templates& /deny Everyone:(S,RD)
icacls &「开始」菜单& /deny Everyone:(S,RD)
icacls &AppData\Local\Application Data& /deny Everyone:(S,RD)
icacls &AppData\Local\History& /deny Everyone:(S,RD)
icacls &AppData\Local\Temporary& /deny Everyone:(S,RD)
icacls &AppData\Roaming\Microsoft\Windows\Start Menu\程序& /deny Everyone:(S,RD)
icacls &Documents\My Music& /deny Everyone:(S,RD)
icacls &Documents\My Pictures& /deny Everyone:(S,RD)
icacls &Documents\My Videos& /deny Everyone:(S,RD)
将上面的命令行保存为 bat 文件,然后在 cmd 命令行中执行就可以啦~希望这个脚本对大家有用处。
其实,我自己使用的是另一个方法,修改了注册表里
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\[User SID]\ProfileImagePath
中的值,这个方法弊端比较多,建议大家不要随意使用。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:36968次
排名:千里之外
原创:16篇
评论:19条
(1)(1)(3)(2)(4)(2)(1)(1)(3)(2)(1)(1)如何利用批处理获取指定域名的IP地址并生成一个TXT文件?_百度知道
提问者采纳
for /f &tokens=2 delims=[]& %%i in ('ping ') do echo %%i&ping.txt 下面这个是可以任意输入网止的@echo offset /p a=要查询的网址for /f &tokens=2 delims=[]& %%i in ('ping %a%') do echo %%i&ping.txt
提问者评价
可以了!非常感谢!!
其他类似问题
批处理的相关知识
其他1条回答
ping &&e:\ip.txt生成的txt文件在E盘注:该批处理已经过验证,绝对可执行。
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁如何处理makefile让其生成的文件带上当前系统时间?_百度知道
如何处理makefile让其生成的文件带上当前系统时间?
如编译生成一个名字为xxxx_.a 在shell中#date &+%d_%B_%Y&是1_JUN_2012如何将使用这个字符串能使用在文件名中
提问者采纳
+%d_%B_%Y&quotFileDate=`date &Linking&`libexe=prefix_$(FileDate).agoal:
@echo &quot
提问者评价
是要这样的效果!非常感谢。
其他类似问题
makefile的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁我下载的东西没下到C盘,但也在C盘生成了一个一样的文件,怎么处理?_百度知道
我下载的东西没下到C盘,但也在C盘生成了一个一样的文件,怎么处理?
该怎么办啊?,删了话又都删了?,但也在C盘生成了一个一样的文件,搞到现在C盘放不下了?,只9G的内存我下载的东西没下到C盘
提问者采纳
其他类似问题
按默认排序
其他3条回答
应该没关系的,C盘都会有一个缓存的记录一般的软件下载安装之后
什么下载软件?可能是这个文件的缓存文件吧!
你用的什么下载工具啊,建议你用迅雷5,在c盘那个文件夹里生成的文件?下面也许对你有帮助:Windows的临时文件是什么?在电脑上的哪个位置? windows临时文件 。看名字就知道是临时放文件用的,系统在临时用到一些文件的时候,就先把这些文件放在这里,在用完之后,会把这些文件删除掉,一般情况下,临时文件夹里没多少文件.但在系统出一些问题或是上网,还有如果安装程序不完善时会造成临时文件夹里有一定的文件没被清空。这时可以用windows自带的磁盘清理功能来清理一下磁盘就行了,当然也可以用360的插件扫描 清理垃圾文件。。一般情况下临时文件夹在以下这些地方C(系统盘):\Documents and Settings\用户名\Local Settings\TempC(系统盘):\Documents and Settings\用户名\Local Settings\Temporary Internet Files(这个文件夹用来存放上网产生的临时文件)C(系统盘):\WINDOWS\Temp记住要显示隐藏文件。除以下文件:
x:\windows\下以 $u... 开头的隐藏文件 。下面文件可以放心删除: C盘下这些可以删除: 1.打开“我的电脑”-“工具”-“文件夹选项”-“查看”-在“显示所有文件和文件夹”选项前打勾-“确定”
2.删除以下文件夹中的内容:
x:\Documents and Settings\用户名\Cookies\下的所有文件(保留index文件)
x:\Documents and Settings\用户名\Local Settings\Temp\下的所有文件(用户临时文件)
x:\Documents and Settings\用户名\LocalSettings\TemporaryInternet Files\下的所有文件(页面文件)
x:\Documents and Settings\用户名\Local Settings\History\下的所有文件(历史纪录)
x:\Documents and Settings\用户名\Recent\下的所有文件(最近浏览文件的快捷方式)
x:\WINDOWS\Temp\下的所有文件(临时文件)
x:\WINDOWS\ServicePackFiles(升级sp1或sp2后的备份文件)
x:\WINDOWS\Driver Cache\i386下的压缩文件(驱动程序的备份文件)
x:\WINDOWS\SoftwareDistribution\download下的所有文件
3.如果对系统进行过windoes updade升级,则删
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁如何用批处理生成这样的目录和文件?_百度知道
如何用批处理生成这样的目录和文件?
fdeadf&#92.txt (1..txt (1.;1:abcd asdf aaaaabcd fdeadf 8976fdsa qwerfe bbbbjklo eriwwew cccc.txt)abcd&#92..txt里的内容为8976)jklo&#92..利用这个文件生成如下目录和文件(所有txt文件名称相同为1.txt里的内容为cccc).txt里的内容为aaaa)abcd\1;asdf\1有一个txt文件,内容如下.txt (1;eriwwew&#92
;f %%i in (rt:第一个数据&#92.txt的内容为 第三个数据先谢谢 COWPM 的回答,我想用批处理命令逐行读取rt,可能没说清楚,生成下面那些文件夹和文件.txt) do call ,但我的数据有上万条啊,那样的确可以实现我举的例子:ss set var=%1 md %1goto ,比如用,我想把每行的数据分开.txt
1:@echo off for &#47:ss %%i goto :eof ;1不好意思.:eof但这样只能将每一行生成一个文件夹;第二个数据&#92.txt吧),我的意思是说前面那些数据存在一个txt文件里(就叫rt.txt这个文件,就是这样
提问者采纳
一二行前部分相同; %%a in (rt.,要指定文本编码格式.;%%a&#92..,我也不知道哈...txt) do (
md %%a&#92..txt默认为ANSI编码.txt)pause另.;%%b
echo %%c &gt.:你的txt文件如下abcd asdf aaaa abcd fdeadf 8976;%%b&#92,保存的1;1.,这个怕是有点难度;tokens=1-3* delims= &quot..,所以创建出来的文件夹abcd下有两个文件夹asdf和fdeadf@echo offfor /f &quot.
提问者评价
谢谢,搞定了!
其他类似问题
批处理的相关知识
其他1条回答
1.mkdir fdeadfcd fdeadfecho 8976&gt.cd..;1;1.txtcd 我自己一步一步做的。虽然比较累.mkdir jklocd jklomkdir eriwwewcd eriwwewecho cccc&gt.,你有好的方法也说下哈@echo offmkdir abcdcd abcdmkdir asdfcd asdfecho aaaa&1..,呵呵.cd.mkdir fdsacd fdsamkdir qwerfecd qwerfeecho bbbb&gt.txtcd.txtcd,共同交流嘛,你看看行不
您可能关注的推广回答者:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 生成批处理文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信