-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathRcloneMapDrive.ps1
More file actions
54 lines (44 loc) · 3.38 KB
/
RcloneMapDrive.ps1
File metadata and controls
54 lines (44 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Get username for logged in user
$username = ((Get-WMIObject -ClassName Win32_ComputerSystem).Username).Split('\')[1]
$rclonedir="C:\Program Files\Rclone"
$RemoteName="Sharepoint"
$MapDriveName="\\server\shared"
#$tag = (Invoke-WebRequest "https://api.github.com/repos/rclone/rclone/releases/latest" | ConvertFrom-Json)[0].tag_name
#Get and expand programs
new-item $rclonedir -itemtype directory
Invoke-WebRequest -Uri "https://downloads.rclone.org/v1.63.1/rclone-v1.63.1-windows-amd64.zip" -outfile "$rclonedir\rclone.zip"
Invoke-WebRequest -Uri "https://github.com/winfsp/winfsp/releases/download/v1.11/winfsp-1.11.22176.msi" -outfile "$rclonedir\winfsp.msi"
Expand-Archive -LiteralPath $rclonedir\rclone.zip -DestinationPath $rclonedir -Force
Copy-Item $rclonedir\rclone-v1.61.1-windows-amd64\* -Destination $rclonedir\
Remove-Item "$rclonedir\rclone.zip" -Force
Remove-Item "$rclonedir\rclone-v1.61.1-windows-amd64\" -Force -Recurse
Invoke-WebRequest -Uri "https://www.nirsoft.net/utils/nircmd-x64.zip" -outfile "$rclonedir\nircmd.zip"
Expand-Archive -LiteralPath $rclonedir\nircmd.zip -DestinationPath $rclonedir -Force
Remove-Item "$rclonedir\nircmd.zip" -Force
#install winfsp
Start-Process $rclonedir\winfsp.msi -ArgumentList /passive
# Create Start Program Entries
new-item "C:\ProgramData\rclone\logs" -itemtype directory
new-item "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\$RemoteName" -itemtype directory
New-Item "$rclonedir\Setup $RemoteName Mapped Drive.bat"
New-Item "$rclonedir\Map $RemoteName.bat"
Set-Content "$rclonedir\Setup $RemoteName Mapped Drive.bat" "@echo off `necho Setup your cloud connection now `ncd ""$rclonedir""`nrclone config create Sharepoint onedrive --all`nCopy ""C:\ProgramData\Microsoft\Windows\Start Menu\Programs\$RemoteName\Map $RemoteName.lnk"" ""C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\""
`nnircmd exec hide rclone.exe mount Sharepoint:/ S: --volname $MapDriveName --vfs-cache-mode full --ignore-checksum --ignore-size --no-console --log-file C:\ProgramData\rclone\logs\driveS-%username%.txt"
Set-Content "$rclonedir\Map $RemoteName.bat" "@echo off `ncd ""$rclonedir""`nnircmd exec hide rclone.exe mount Sharepoint:/ S: --volname $MapDriveName --vfs-cache-mode full --ignore-checksum --ignore-size --no-console --log-file C:\ProgramData\rclone\logs\driveS-%username%.txt"
$ShortcutPath = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\$RemoteName\Setup $RemoteName.lnk"
$IconLocation = "$rclonedir\rclone.exe"
$Shell = New-Object -ComObject ("WScript.Shell")
$Shortcut = $Shell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = "$rclonedir\Setup $RemoteName Mapped Drive.bat"
$Shortcut.IconLocation = "$IconLocation, $IconArrayIndex"
$Shortcut.Save()
$ShortcutPath = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\$RemoteName\Map $RemoteName.lnk"
$IconLocation = "$rclonedir\rclone.exe"
$Shell = New-Object -ComObject ("WScript.Shell")
$Shortcut = $Shell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = "$rclonedir\Map $RemoteName.bat"
$Shortcut.IconLocation = "$IconLocation, $IconArrayIndex"
$Shortcut.Save()
#Copy-Item "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\$RemoteName\Map $RemoteName.lnk" -Destination "C:\Users\$username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"
# Open Config Folder
#explorer.exe /e,"C:\Users\$username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\$RemoteName"