将需要导入的用户以csv格式组织
姓 名 全名 登录名 密码
张,三, 张三, three.zhang,pass01
李,四, 李四, four.li, passo2
王,五, 王五, five.wang, pass03
刘,六, 刘六, six.liu, passo4
赵,七, 赵七, seven.zhao, pass05
执行脚本,使用dsadd 添加域用户
for /f "tokens=1,2,3,4,5 delims=," %a in (users.csv) do dsadd user "cn=%c,ou=cosmos.com,dc=cosmos,dc=com" -samid %d -upn %d@cosmos.com -fn %b -ln %a -pwd %e -disabled no |
for /f "tokens=1,2,3,4,5 delims=," %a in (users.csv) do dsadd user "cn=%c,ou=cosmos.com,dc=cosmos,dc=com" -samid %d -upn %[email protected] -fn %b -ln %a -pwd %e -disabled no
中途注意检查重名,否则导入失败
查找文件系统中的长文件名文件
向OOS等对象存储转移数据的时候,因为文件系统兼容性的问题,最好处理掉那些文件名长度大于255的文件,以免出现转移失败的情况
Windows下可以使用Powershell的Get-ChildItem命令方式
Get-ChildItem -r * # 获取文件夹下所有对象
{$_.GetType().Name -match”File” } #获取文件类型的名称
{$_.fullname.length -ge 256} # 文件名长度大于等于256的文件
%{$_.fullname} #打印文件名
Get-ChildItem -r * |? {$_.GetType().Name -match"File" } |? {$_.fullname.length -ge 256} |%{$_.fullname} |
Get-ChildItem -r * |? {$_.GetType().Name -match"File" } |? {$_.fullname.length -ge 256} |%{$_.fullname}
linux直接利用 length属性即可
find. -type f | awk 'length> 255'> longfilename-list.txt |
find. -type f | awk 'length> 255'> longfilename-list.txt
附各文件系统的最大文件名长度
文件系统 |
最大文件名长度 |
最大文件大小 |
最大分区大小 |
ext2 |
255 bytes |
2 TB |
16 TB |
ext3 |
255 bytes |
2 TB |
16 TB |
ext4 |
255 bytes |
16 TB |
1 EB |
XFS |
255 bytes |
8 EB |
8 EB |
Btrfs |
255 bytes |
16 EB |
16 EB |
参考
https://stackoverflow.com/q/12697259/614863
https://www.helplib.com/diannao/article_172660
https://blog.csdn.net/baixiaokanglili/article/details/78804991
一个简单的需求,批量定义变量并运算赋值,再对获取变量计算的结果值
方法:
1.使用SET /A 方式暂存表达式的中间计算结果
2.使用setlocal enabledelayedexpansion 避免解释器在循环体中实时展开变量
3.使用&合并表达式为1行
启用setlocal enabledelayedexpansion。启动变量延迟
@echo on
set var4="test"
for /l %%i in (1,1,3) do set var%%i=%%i
echo %var1%
echo %var2%
echo %var3%
echo %var4%
setlocal enabledelayedexpansion
for /l %%j in (1,1,3) do ( set /a t= var%%j & echo !t! )
for /l %%j in (1,1,3) do (
set /a t= var%%j
echo !t!
)
endlocal |
@echo on
set var4="test"
for /l %%i in (1,1,3) do set var%%i=%%i
echo %var1%
echo %var2%
echo %var3%
echo %var4%
setlocal enabledelayedexpansion
for /l %%j in (1,1,3) do ( set /a t= var%%j & echo !t! )
for /l %%j in (1,1,3) do (
set /a t= var%%j
echo !t!
)
endlocal
pause
输出
1
2
3
4
关闭enabledelayedexpansion
输出
4
4
4
4
关于setlocal和enabledelayedexpansion
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/cc772046(v=ws.11)?redirectedfrom=MSDN
使用Hyper-V方案对服务器进行虚拟化实验,为了节省时间和提高安全性,安装Windows Server 2012 时直接安装成Microsoft Server 2012 Core。安装完毕后只有一个cmd命令提示符可以用。服务器管理各种不方便,考虑切换为GUI模式后再切换为Core模式。
切换GUI模式需要手动安装Windows Server的GUI组件
Server-Gui-Mgmt-Infra
Server-Gui-Shell
使用
Install-WindowsFeature
Uninstall-WindowsFeature
命令即可完成Windows功能的安装和删除
Read more…
Recent Comments