文件夾共享概述linux
共享文件夾的應用很是普遍,客戶端對服務器端進行文件管理,局域網文件直傳等等,在linux下,能夠簡單的安裝smaba協議,簡單的配置以後便可使用。在windows下,能夠經過圖形化的操做開啓這項功能,固然帶着一點極客風格,咱們經過powershell(少許出現cmd)來對其進行管理。shell
操做步驟windows
查看共享列表服務器
在powershell內,咱們能夠經過執行如下cmdlet獲取共享信息:網絡
λ Get-WmiObject -Class Win32_Share Name Path Description ---- ---- ----------- ADMIN$ C:\Windows 遠程管理 C$ C:\ 默認共享 D$ D:\ 默認共享 E$ E:\ 默認共享 IPC$ 遠程 IPC Users C:\Users
同理,在cmd下,也能夠ide
λ net share 共享名 資源 註解 ------------------------------------------------------------------------------- C$ C:\ 默認共享 D$ D:\ 默認共享 E$ E:\ 默認共享 IPC$ 遠程 IPC ADMIN$ C:\Windows 遠程管理 Users C:\Users 命令成功完成。
建立一個共享文件夾教程
瘋狂的Powershellip
# 共享名 $ShareName = 'TestShare' # 共享路徑 $Path = 'D:\SHARE' If (!(Get-WmiObject -Class Win32_Share -Filter "name='$ShareName'")) { $Shares = [WMICLASS]"WIN32_Share" $Shares.Create($Path,$ShareName,0).ReturnValue } else { Write-Warning "$ShareName has been sharing!!" }
若是若是您有遠程機器的管理員權限的話,也利用WMI在遠程的機器上建立新的共享文件夾,下面是在遠程主機上建立共享文件夾的代碼:ci
# 共享名 $ShareName = 'TestShare' # 共享路徑 $Path = 'D:\SHARE' # 遠程主機名 $Server = 'Server' If (!(Get-WmiObject -Class Win32_Share -Filter "name='$ShareName'")) { $Shares = [WMICLASS]"\\$Server\root\cimv2:WIN32_Share" $Shares.Create($Path,$ShareName,0).ReturnValue } else { Write-Warning "$ShareName has been sharing!!" }
低調的cmd資源
::建議先查看當前的共享文件夾再進行建立操做 net share TestShare=D:\SHARE /users:25 /remark:"test share of the a folder"
咱們很輕易地就能將一個文件夾的共享狀態開啓,咱們能夠經過UNC路徑對其進行訪問。建立完文件共享以後,咱們來看看怎麼使用吧。
驅動器映射和共享訪問
接下來,咱們摒棄圖形化界面的操做(若是你非喜歡那麼作的話,能夠經過網上鄰居【「網絡」】進行查看,或者在計算機圖標下右鍵選擇映射網絡驅動器),咱們來經過命令去啓用吧。
強悍的Powershell
臨時建立一個網絡驅動器映射:
(New-Object -ComObject WScript.Network).MapNetworkDrive("Z:", "\\TEST-PC\USERS")
建立一個持久化的網絡驅動器映射:
# New-PSDrive 加上 -Persist 參數使得驅動器在 PowerShell 以外可見。 # 要真正地建立一個永久的網絡驅動器,請確保加上 -Scope Global。/ # 若是 New-PSDrive 在全局做用域範圍以外運行(例如,在一個腳本中運行),該驅動器只會在腳本運行時出如今文件管理器中。 New-PSDrive -Name Z -PSProvider FileSystem -Root \\TEST-PC\USERS -Persist -Scope Global
小巧的cmd
::下面這條命令雖然能夠在cmd使用此磁盤映射,可是不可利用資源管理器加載。 net use Z: \\TEST-PC\USERS ::這裏是將systemroot文件夾映射爲z:驅動器,可利用"explorer.exe"加載,惋惜不能使用網絡路徑。 subst Z: $env:systemroot
完成如上的工做以後,不出意外,你的資源管理器會出現你想要訪問的網絡路徑的圖標。
刪除共享
若是不須要再使用此共享文件夾了,能夠卸載掉網絡驅動器,並在共享的主機上刪除該共享。
Powershell
$Shares = Get-WMIObject Win32_Share | Where {$_.Name -eq ""} Foreach ($Share in $Shares) { $Share.Delete() }
cmd
net share TestShare /delete
小結
cmdkey /add:targetname /user:username /pass:password
Powershell管理共享的相關連接:https://msdn.microsoft.com/...
免費提供最新Linux技術教程書籍,爲開源技術愛好者努力作得更多更好:http://www.linuxprobe.com/