日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SecureCRT也能和Xshell一样批量导入主机

發布時間:2024/4/13 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SecureCRT也能和Xshell一样批量导入主机 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在Xshell可以像這樣一個文件批量導入主機:

https://blog.netsarang.com/91/importing-csv-formatted-host-information-to-xshell/

在CRT上也可以,格式和Xshell的一樣,但前提是需要運行一個自定義腳本:

腳本:https://forums.vandyke.com/showthread.php?p=37089#post37089

操作:https://www.vandyke.com/support/tips/importsessions.html

視頻操作:https://youtu.be/f7nMFYhGoiI

簡單操作步驟:

?腳本文件內容:

ImportArbitraryDataFromFileToSecureCRTSessions.vbs

# $language = "VBScript" # $interface = "1.0"' ImportArbitraryDataFromFileToSecureCRTSessions.txt ' (Designed for use with SecureCRT 7.2 and later) ' ' Last Modified: 23 Feb, 2018 ' - Warn user if the configuration folder appears to be read-only. ' - Fall back to secondary locations in which to attempt to write ' the results log file in case the user's Documents, Desktop, or ' configuration folder are all read-only or otherwise un-write-able ' for the user. ' ' Last Modified: 21 Dec, 2017 ' - Allow multiple 'description' fields on the same line. All will be ' compounded together with each one ending up on a separate line in ' the Session's Description session option. ' - Allow 'username' field to be defaulted in the header line ' - Allow 'folder' field to be defaulted in the header line ' - Duplicate sessions are now imported with unique time-stamped ' names (for each additional duplicate). Earlier versions of this ' script would overwrite the first duplicate with any subsequent ' duplicates that were found in the data file. ' - When displaying the browse dialog, filter now includes both ' CSV and TXT file types, to make it easier to find the data file ' (less clicking). ' - Allow for protocol field to be defaulted, if not present in the ' header line. ' - Fix error messages relating to invalid header lines so they no ' longer indicate Protocol is a required field. If it's not present ' the Default Session's protocol value will be used. ' - Allow header fields to be case-insensitive so that "Description" ' and "UserName" work just the same as "description" and "username" ' ' Last Modified: 09 Aug, 2017 ' - Changed from using CInt to CLng in order to support port ' specifications larger than 32768 (max integer supported in VBScript) ' ' Last Modified: 20 Feb, 2017 ' - Added progress info to status bar ' - When a line from the source file has bogus/incomplete data on it, ' the script no longer halts operation, but instead, continues the ' import process for all remaining legitimate lines, skipping any ' lines that don't have sufficient/accurate format. ' - Changed format of summary message shown at end to include header ' line so entries that were skipped can be easily copied into a new ' document to be imported. ' - Toggle the Session Manager automatically so that imported sessions ' are more immediately visible in the Session Manager. ' ' Last Modified: 20 Jan, 2015 ' - Combined TAPI protocol handling (which is no longer ' supported for mass import) with Serial protocol ' import errors. ' - Enhanced example .csv file data to show subfolder specification. ' ' Last Modified: 21 Mar, 2012 ' - Initial version for public forums ' ' DESCRIPTION ' This sample script is designed to create sessions from a text file (.csv ' format by default, but this can be edited to fit the format you have). ' ' To launch this script, map a button on the button bar to run this script: ' http://www.vandyke.com/support/tips/buttonbar.html ' ' The first line of your data file should contain a comma-separated (or whatever ' you define as the g_strDelimiter below) list of supported "fields" designated ' by the following keywords: ' ----------------------------------------------------------------------------- ' session_name: The name that should be used for the session. If this field ' does not exist, the hostname field is used as the session_name. ' folder: Relative path for session as displayed in the Connect dialog. ' hostname: The hostname or IP for the remote server. ' protocol: The protocol (SSH2, SSH1, telnet, rlogin) ' port: The port on which remote server is listening ' username: The username for the account on the remote server ' emulation: The emulation (vt100, xterm, etc.) ' description: The comment/description. Multiple lines are separated with '\r' ' ============================================================================= ' ' ' As mentioned above, the first line of the data file instructs this script as ' to the format of the fields in your data file and their meaning. It is not a ' requirement that all the options be used. For example, notice the first line ' of the following file only uses the "hostname", "username", and "protocol" ' fields. Note also that the "protocol" field can be defaulted so that if a ' protocol field is empty it will use the default value. ' ----------------------------------------------------------------------------- ' hostname,username,folder,protocol=SSH2 ' 192.168.0.1,root,_imported,SSH1 ' 192.168.0.2,admin,_imported,SSH2 ' 192.168.0.3,root,_imported\folderA, ' 192.168.0.4,root,, ' 192.168.0.5,admin,_imported\folderB,telnet ' ... and so on ' ============================================================================= ' ' ' The g_strDefaultProtocol variable will only be defined within the ' ValidateFieldDesignations function if the protocol field has a default value ' (e.g., protocol=SSH2), as read in from the first line of the data file. Dim g_strDefaultProtocol' The g_strDefaultFolder variable will only be defined within the ' ValidateFieldDesignations function if the folder field has a default value ' (e.g., folder=Site34), as read in from the first line of the data file. Dim g_strDefaultFolder' The g_strDefaultUsername variable will only be defined within the ' ValidateFieldDesignations function if the username field has a default value ' (e.g., username=bensolo), as read in from the first line of the data file. Dim g_strDefaultUsername' If your data file uses spaces or a character other than comma as the ' delimiter, you would also need to edit the g_strDelimiter value a few lines ' below to indicate that fields are separated by spaces, rather than by commas. ' For example: ' g_strDelimiter = " "' Using a ";" might be a good alternative for a file that includes the comma ' character as part of any legitimate session name or folder name, etc. Dim g_strDelimiter g_strDelimiter = "," ' comma ' g_strDelimiter = " " ' space ' g_strDelimiter = ";" ' semi-colon ' g_strDelimiter = chr(9) ' tab ' g_strDelimiter = "|||" ' a more unique example of a delimiter.' The g_strSupportedFields indicates which of all the possible fields, are ' supported in this example script. If a field designation is found in a data ' file that is not listed in this variable, it will not be imported into the ' session configuration. Dim g_strSupportedFields g_strSupportedFields = _"description,emulation,folder,hostname,port,protocol,session_name,username"' If you wish to overwrite existing sessions, set the ' g_bOverwriteExistingSessions to True; for this example script, we're playing ' it safe and leaving any existing sessions in place :). Dim g_bOverwriteExistingSessions g_bOverwriteExistingSessions = FalseDim g_fso, g_shell Set g_fso = CreateObject("Scripting.FileSystemObject") Set g_shell = CreateObject("WScript.Shell")Const ForReading = 1 Const ForWriting = 2 Const ForAppending = 8Dim g_strHostsFile, g_strExampleHostsFile, g_strMyDocs, g_strMyDesktop g_strMyDocs = g_shell.SpecialFolders("MyDocuments") g_strMyDesktop = g_shell.SpecialFolders("Desktop") g_strHostsFile = g_strMyDocs & "\MyDataFile.csv" g_strExampleHostsFile = _vbtab & "hostname,protocol,username,folder,emulation" & vbcrlf & _vbtab & "192.168.0.1,SSH2,root,Linux Machines,XTerm" & vbcrlf & _vbtab & "192.168.0.2,SSH2,root,Linux Machines,XTerm" & vbcrlf & _vbtab & "..." & vbcrlf & _vbtab & "10.0.100.1,SSH1,admin,CISCO Routers,VT100" & vbcrlf & _vbtab & "10.0.101.1,SSH1,admin,CISCO Routers,VT100" & vbcrlf & _vbtab & "..." & vbcrlf & _vbtab & "myhost.domain.com,SSH2,administrator,Windows Servers,VShell" & _vbtab & "..." & vbcrlf g_strExampleHostsFile = Replace(g_strExampleHostsFile, ",", g_strDelimiter)Dim g_strConfigFolder, strFieldDesignations, vFieldsArray, vSessionInfog_strConfigFolder = GetConfigPath()Dim strSessionName, strHostName, strPort Dim strUserName, strProtocol, strEmulation Dim strPathForSessions, strLine, nFieldIndex Dim strSessionFileName, strFolder, nDescriptionLineCount, strDescriptionDim g_strLastError, g_strErrors, g_strSessionsCreated Dim g_nSessionsCreated, g_nDataLinesg_strDateTimeTag = GetDateTimeTag()g_strBogusLinesNotImported = ""Import'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Sub Import()g_strHostsFile = crt.Dialog.FileOpenDialog( _"Please select the host data file to be imported.", _"Open", _g_strHostsFile, _"CSV/Text Files (*.txt;*.csv)|*.txt;*.csv|All files (*.*)|*.*")If g_strHostsFile = "" ThenExit SubEnd If' Open our data file for reading Dim objDataFileSet objDataFile = g_fso.OpenTextFile(g_strHostsFile, ForReading, False)' Now read the first line of the data file to determine the field' designations On Error Resume NextstrFieldDesignations = objDataFile.ReadLine()nError = Err.NumberstrErr = Err.DescriptionOn Error Goto 0If nError <> 0 ThenIf nError = 62 Thencrt.Dialog.MessageBox("Your data file is empty." & vbcrlf & _"Fill it with import data and try again." & vbcrlf & vbcrlf & _"ReadLine() Error code: " & nError & vbcrlf & _"ReadLine() Error text: " & strErr)Elsecrt.Dialog.MessageBox("Unable to read the first line from your data file!" & _vbcrlf & vbcrlf & _"ReadLine() Error code: " & nError & vbcrlf & vbcrlf & _"ReadLine() Error text: " & strErr)End IfExit SubEnd If' Validate the data file If Not ValidateFieldDesignations(strFieldDesignations) ThenobjDataFile.CloseExit SubEnd If' Get a timer reading so that we can calculate how long it takes to import.nStartTime = Timer' Here we create an array of the items that will be used to create the new' session, based on the fields separated by the delimiter specified in' g_strDelimitervFieldsArray = Split(strFieldDesignations, g_strDelimiter)' Loop through reading each line in the data file and creating a session' based on the information contained on each line. Do While Not objDataFile.AtEndOfStreamstrLine = ""strLine = objDataFile.ReadLinecrt.Session.SetStatusText "Processing line #: " & _NN(objDataFile.Line - 1, 4)' This sets v_File Data array elements to each section of strLine,' separated by the delimitervSessionInfo = Split(strLine, g_strDelimiter)If UBound(vSessionInfo) < UBound(vFieldsArray) ThenIf Trim(strLine) <> "" Theng_strErrors = g_strErrors & vbcrlf & _"Insufficient data on line #" & _NN(objDataFile.Line - 1, 4) & ": " & strLineElseg_strErrors = g_strErrors & vbcrlf & _"Insufficient data on line #" & _NN(objDataFile.Line - 1, 4) & ": [Empty Line]"End IfElseIf UBound(vSessionInfo) > UBound(vFieldsArray) Theng_strErrors = g_strErrors & vbcrlf & _"==> Number of data fields on line #" & _NN(objDataFile.Line - 1, 4) & _"(" & UBound(vSessionInfo) & ") " & _"does not match the number of fields in the header " & _"(" & UBound(vFieldsArray) & ")." & vbcrlf & _" This line will not be imported (Does the session name have a character that " & _"matches the delimiter you're using? Also check for characters that Windows does not " & _"allow to be used in filenames: /\:*?""<>|): " & vbcrlf & vbtab & strLineg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineElse' Variable used to determine if a session file should actually be' created, or if there was an unrecoverable error (and the session' should be skipped). Dim bSaveSessionbSaveSession = True' Now we will match the items from the new file array to the correct' variable for the session's ini fileFor nFieldIndex = 0 To UBound(vSessionInfo)Select Case LCase(vFieldsArray(nFieldIndex))Case "session_name"strSessionName = vSessionInfo(nFieldIndex)' Check folder name for any invalid characters Dim reSet re = New RegExpre.Pattern = "[\\\|\/\:\*\?\""\<\>]" If re.Test(strSessionName) ThenbSaveSession = FalseIf g_strErrors <> "" Then g_strErrors = _vbcrlf & g_strErrorsg_strErrors = _"Error: " & _"Invalid characters found in SessionName """ & _strSessionName & """ specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLine & g_strErrorsg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd IfCase "port"strPort = Trim(vSessionInfo(nFieldIndex))If Not IsNumeric(strPort) ThenbSaveSession = FalseIf g_strErrors <> "" Then g_strErrors = _vbcrlf & g_strErrorsg_strErrors = _"Error: Invalid port """ & strPort & _""" specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLine & g_strErrorsg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd IfCase "protocol"strProtocol = Trim(lcase(vSessionInfo(nFieldIndex)))Select Case strProtocolCase "ssh2"strProtocol = "SSH2"Case "ssh1"strProtocol = "SSH1"Case "telnet"strProtocol = "Telnet"Case "serial", "tapi"bSaveSession = Falseg_strErrors = g_strErrors & vbcrlf & _"Error: Unsupported protocol """ & _vSessionInfo(nFieldIndex) & _""" specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLineCase "rlogin"strProtocol = "RLogin"Case ElseIf g_strDefaultProtocol <> "" ThenstrProtocol = g_strDefaultProtocolElsebSaveSession = FalseIf g_strErrors <> "" Then g_strErrors = _vbcrlf & g_strErrorsg_strErrors = _"Error: Invalid protocol """ & _vSessionInfo(nFieldIndex) & _""" specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLine & g_strErrorsg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd IfEnd Select ' for protocols Case "hostname"strHostName = Trim(vSessionInfo(nFieldIndex))If strHostName = "" ThenbSaveSession = Falseg_strErrors = g_strErrors & vbcrlf & _"Warning: 'hostname' field on line #" & _NN(objDataFile.Line - 1, 4) & _" is empty: " & strLineg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd IfCase "username"strUserName = Trim(vSessionInfo(nFieldIndex))Case "emulation"strEmulation = LCase(Trim(vSessionInfo(nFieldIndex)))Select Case strEmulationCase "xterm"strEmulation = "Xterm"Case "vt100"strEmulation = "VT100"Case "vt102"strEmulation = "VT102"Case "vt220"strEmulation = "VT220"Case "ansi"strEmulation = "ANSI"Case "linux"strEmulation = "Linux"Case "scoansi"strEmulation = "SCOANSI"Case "vshell"strEmulation = "VShell"Case "wyse50"strEmulation = "WYSE50"Case "wyse60"strEmulation = "WYSE60"Case ElsebSaveSession = Falseg_strErrors = g_strErrors & vbcrlf & _"Warning: Invalid emulation """ & _strEmulation & """ specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLineg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd SelectCase "folder"strFolder = Trim(vSessionInfo(nFieldIndex))' Check folder name for any invalid characters' Note that a folder can have subfolder designations,' so '/' is a valid character for the folder (path).Set re = New RegExpre.Pattern = "[\|\:\*\?\""\<\>]" If re.Test(strFolder) ThenbSaveSession = FalseIf g_strErrors <> "" Then g_strErrors = _vbcrlf & g_strErrorsg_strErrors = _"Error: Invalid characters in folder """ & _strFolder & """ specified on line #" & _NN(objDataFile.Line - 1, 4) & _": " & strLine & g_strErrorsg_strBogusLinesNotImported = g_strBogusLinesNotImported & _vbcrlf & strLineEnd IfCase "description"strCurDescription = Trim(vSessionInfo(nFieldIndex))If strDescription = "" ThenstrDescription = strCurDescriptionElsestrDescription = strDescription & "\r" & strCurDescriptionEnd IfCase Else' If there is an entry that the script is not set to use' in strFieldDesignations, stop the script and display a' message Dim strMsg1strMsg1 = "Error: Unknown field designation: " & _vFieldsArray(nFieldIndex) & vbcrlf & vbcrlf & _" Supported fields are as follows: " & _vbcrlf & vbcrlf & vbtab & g_strSupportedFields & _vbcrlf & _vbcrlf & " For a description of " & _"supported fields, please see the comments in " & _"the sample script file."If Trim(g_strErrors) <> "" ThenstrMsg1 = strMsg1 & vbcrlf & vbcrlf & _"Other errors found so far include: " & _g_strErrorsEnd IfMsgBox strMsg1, _vbOkOnly, _"Import Data To SecureCRT Sessions: Data File Error"Exit SubEnd SelectNextIf bSaveSession Then' Use hostname if a session_name field wasn't presentIf strSessionName = "" ThenstrSessionName = strHostNameEnd IfIf strFolder = "" ThenstrFolder = g_strDefaultFolderEnd If' Canonicalize the path to the session, as neededstrSessionPath = strSessionNameIf strFolder <> "" ThenstrSessionPath = strFolder & "/" & strSessionNameEnd If' Strip any leading '/' characters from the session pathIf Left(strSessionPath, 1) = "/" ThenstrSessionPath = Mid(strSessionPath, 2)End IfIf SessionExists(strSessionPath) ThenIf Not g_bOverwriteExistingSessions Then' Append a unique tag to the session name, if it already existsstrSessionPath = strSessionPath & _"(import_" & GetDateTimeTag & ")"End IfEnd If' Now: Create the session.' Copy the default session settings into new session name and set the' protocol. Setting protocol protocol is essential since some variables' within a config are only available with certain protocols. For example,' a telnet configuration will not be allowed to set any port forwarding' settings since port forwarding settings are specific to SSH.Set objConfig = crt.OpenSessionConfiguration("Default")If strProtocol = "" ThenstrProtocol = g_strDefaultProtocolEnd IfobjConfig.SetOption "Protocol Name", strProtocol' We opened a default session & changed the protocol, now we' save the config to the new session path: objConfig.Save strSessionPath' Now, let's open the new session configuration we've' saved, and set up the various parameters that were specified' in the file. If Not SessionExists(strSessionPath) Thencrt.Dialog.MessageBox("Failed to create a new session '" & _strSessionPath & "'." & vbcrlf & _vbcrlf & _"Does your configuration folder have " & _"sufficient permissions to allow writing/creating " & _"files?" & vbcrlf & vbcrlf & _vbtab & _"Options > Global Options > Configuration Paths" & _vbcrlf & vbcrlf & _"Fix permissions on your configuration folder and " & _"then try running this script again.")Exit SubEnd IfSet objConfig = crt.OpenSessionConfiguration(strSessionPath)objConfig.SetOption "Emulation", strEmulationIf LCase(strProtocol) <> "serial" ThenIf strHostName <> "" ThenobjConfig.SetOption "Hostname", strHostNameEnd IfIf strUsername = "" ThenstrUsername = g_strDefaultUsernameEnd IfIf strUserName <> "" ThenobjConfig.SetOption "Username", strUserNameEnd IfEnd IfIf strDescription <> "" ThenobjConfig.SetOption "Description", Split(strDescription, "\r")End IfIf UCase(strProtocol) = "SSH2" ThenIf strPort = "" Then strPort = 22objConfig.SetOption "[SSH2] Port", CLng(strPort)End IfIf UCase(strProtocol) = "SSH1" ThenIf strPort = "" Then strPort = 22objConfig.SetOption "[SSH1] Port", CLng(strPort)End IfIf UCase(strProtocol) = "TELNET" ThenIf strPort = "" Then strPort = 23objConfig.SetOption "Port", CLng(strPort)End If' If you would like ANSI Color enabled for all imported sessions (regardless' of value in Default session, remove comment from following line)' objConfig.SetOption "ANSI Color", True' Add other "SetOption" calls desired here...' objConfig.SetOption "Auto Reconnect", True' objConfig.SetOption "Color Scheme", "Traditional"' objConfig.SetOption "Color Scheme Overrides Ansi Color", True' objConfig.SetOption "Copy to clipboard as RTF and plain text", True' objConfig.SetOption "Description", Array("This session was imported from a script on " & Now)' objConfig.SetOption "Firewall Name", "YOUR CUSTOM FIREWALL NAME HERE"' objConfig.SetOption "Line Send Delay", 15' objConfig.SetOption "Log Filename V2", "${VDS_USER_DATA_PATH}\_ScrtLog(%S)_%Y%M%D_%h%m%s.%t.txt"' objConfig.SetOption "Rows", 60' objConfig.SetOption "Cols", 140' objConfig.SetOption "Start Tftp Server", True' objConfig.SetOption "Use Word Delimiter Chars", True' objConfig.SetOption "Word Delimiter Chars", " <>()+=$%!#*"' objConfig.SetOption "X Position", 100' objConfig.SetOption "Y Position", 50 objConfig.SaveIf g_strSessionsCreated <> "" Theng_strSessionsCreated = g_strSessionsCreated & vbcrlfEnd Ifg_strSessionsCreated = g_strSessionsCreated & " " & strSessionPathg_nSessionsCreated = g_nSessionsCreated + 1End If' Reset all variables in preparation for reading in the next line of' the hosts info file.strEmulation = ""strPort = ""strHostName = ""strFolder = ""strUserName = ""strSessionName = ""strDescription = ""nDescriptionLineCount = 0End IfLoopg_nDataLines = objDataFile.LineobjDataFile.Closecrt.Session.SetStatusText ""Dim strResultsstrResults = "Import operation completed in " & _GetMinutesAndSeconds(Timer - nStartTime)If g_nSessionsCreated > 0 ThenstrResults = strResults & _vbcrlf & _String(70, "-") & vbcrlf & _"Number of Sessions created: " & g_nSessionsCreated & vbcrlf & _vbcrlf & _g_strSessionsCreatedElsestrResults = strResults & vbcrlf & _String(70, "-") & vbcrlf & _"No sessions were created from " & g_nDataLines & " lines of data."End IfIf g_strErrors = "" ThenstrResults = "No errors/warnings encountered from the import operation." & vbcrlf & vbcrlf & strResultsElsestrResults = "Errors/warnings from this operation include: " & g_strErrors & vbcrlf & _String(70, "-") & vbcrlf & _strResultsEnd IfIf g_strBogusLinesNotImported <> "" ThenstrResults = _"The following lines from the data file were *not* imported for " & _"various reasons detailed below:" & vbcrlf & _String(70, "=") & vbcrlf & _strFieldDesignations & _g_strBogusLinesNotImported & vbcrlf & _String(70, "-") & vbcrlf & _"Fix the above lines to resolve the issue and save the fixed lines " & _"to a new file. You can then run this script again to import these " & _"skipped sessions." & vbcrlf & vbcrlf & strResultsEnd IfSet cFilenames = CreateObject("Scripting.Dictionary")cFilenames.Add Replace(g_strMyDocs & "/__SecureCRT-Session-ImportLog-" & g_strDateTimeTag & ".txt", "\", "/"), "" cFilenames.Add Replace(g_strMyDesktop & "/__SecureCRT-Session-ImportLog-" & g_strDateTimeTag & ".txt", "\", "/"), "" cFilenames.Add Replace(g_strConfigFolder & "/__SecureCRT-Session-ImportLog-" & g_strDateTimeTag & ".txt", "\", "/"), "" bSuccess = FalsestrResults = strResults & vbcrlf & vbcrlf & _String(80, "-") & vbcrlfFor Each strFilename In cFilenames.Keys():On Error Resume NextSet objFile = g_fso.OpenTextFile(strFilename, ForWriting, True)strErr = Err.DescriptionnError = Err.NumberOn Error Goto 0If nError = 0 ThenbSuccess = TrueExit ForElsecrt.Session.SetStatusText("Unable to open results file.")strResults = strResults & vbcrlf & _"Failed to write summary results to: " & strFilenameEnd IfIf Not g_fso.FileExists(strFilename) ThenbSuccess = FalseElseExit ForEnd IfNextIf Not bSuccess Thencrt.Clipboard.Text = strResultscrt.Dialog.MessageBox( _"Attempted to write summary results to the file locations below, " & _"but access was denied." & vbcrlf & vbtab & vbcrlf & vbtab & _Join(cFilenames.Keys(), vbcrlf & vbtab) & vbcrlf & vbcrlf & _"Results are in the clipboard. " & _"Paste this data into your favorite app now to see what occurred.")Exit SubEnd IfobjFile.WriteLine strResultsobjFile.Close' Display the log file as an indication that the information has been' imported.g_shell.Run chr(34) & strFilename & chr(34), 5, False End Sub'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ' Helper Methods and Functions '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function ValidateFieldDesignations(ByRef strFields)If Instr(strFieldDesignations, g_strDelimiter) = 0 ThenDim strErrorMsg, strDelimiterDisplaystrErrorMsg = "Invalid header line in data file. " & _"Delimiter character not found: "If Len(g_strDelimiter) > 1 ThenstrDelimiterDisplay = g_strDelimiterElseIf Asc(g_strDelimiter) < 33 or Asc(g_strDelimiter) > 126 ThenstrDelimiterDisplay = "ASCII[" & Asc(g_strDelimiter) & "]"ElsestrDelimiterDisplay = g_strDelimiterEnd IfEnd IfstrErrorMsg = strErrorMsg & strDelimiterDisplay & vbcrlf & vbcrlf & _"The first line of the data file is a header line " & _"that must include" & vbcrlf & _"a '" & strDelimiterDisplay & _"' separated list of field keywords." & vbcrlf & _vbcrlf & "'hostname' is a required key word." & _vbcrlf & vbcrlf & _"The remainder of the lines in the file should follow the " & _vbcrlf & _"pattern established by the header line " & _"(first line in the file)." & vbcrlf & "For example:" & vbcrlf & _g_strExampleHostsFileMsgBox strErrorMsg, _vbOkOnly, _"Import Data To SecureCRT Sessions"Exit FunctionEnd IfIf Instr(LCase(strFieldDesignations), "hostname") = 0 ThenstrErrorMsg = "Invalid header line in data file. " & _"'hostname' field is required."If Len(g_strDelimiter) > 1 ThenstrDelimiterDisplay = g_strDelimiterElseIf Asc(g_strDelimiter) < 33 Or Asc(g_strDelimiter) > 126 ThenstrDelimiterDisplay = "ASCII[" & Asc(g_strDelimiter) & "]"ElsestrDelimiterDisplay = g_strDelimiterEnd IfEnd IfMsgBox strErrorMsg & vbcrlf & _"The first line of the data file is a header line " & _"that must include" & vbcrlf & _"a '" & strDelimiterDisplay & _"' separated list of field keywords." & vbcrlf & _vbcrlf & "'hostname' is a required keyword." & _vbcrlf & vbcrlf & _"The remainder of the lines in the file should follow the " & _vbcrlf & _"pattern established by the header line " & _"(first line in the file)." & vbcrlf & "For example:" & vbcrlf & _g_strExampleHostsFile, _vbOkOnly, _"Import Data To SecureCRT Sessions"Exit FunctionEnd IfIf Instr(LCase(strFieldDesignations), "protocol") = 0 ThenSet objConfig = crt.OpenSessionConfiguration("Default")g_strDefaultProtocol = objConfig.GetOption("Protocol Name")Else' We found "protocol", now look for a default protocol designationvFields = Split(strFields,g_strDelimiter)For each strField In vFieldsIf (InStr(LCase(strField), "protocol") > 0) And _(Instr(LCase(strField), "=") >0) Theng_strDefaultProtocol = UCase(Split(strField, "=")(1))' Fix the protocol field since we know the default protocol' valuestrFields = Replace(strFields, strField, "protocol")End IfNextEnd IfvFields = Split(strFields, g_strDelimiter)For Each strField In vFieldsIf (Instr(LCase(strField), "folder") > 0) And _(Instr(LCase(strField), "=") > 0) Theng_strDefaultFolder = Split(strField, "=")(1)' Fix the folder field since we know the default folderstrFields = Replace(strFields, strField, "folder")End IfIf (Instr(LCase(strField), "username") > 0) And _(Instr(LCase(strField), "=") > 0) Theng_strDefaultUsername = Split(strField, "=")(1)' Fix the username field since we know the default usernamestrFields = Replace(strFields, strField, "username")End IfNextValidateFieldDesignations = True End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function ReadRegKey(strKeyPath)On Error Resume NextErr.ClearReadRegKey = g_shell.RegRead(strKeyPath)If Err.Number <> 0 Then' Registry key must not have existed.' ReadRegKey will already be empty, but for the sake of clarity, we'll' set it to an empty string explicitly.ReadRegKey = ""End IfOn Error Goto 0 End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function CreateFolderPath(strPath) ' Recursive function If g_fso.FolderExists(strPath) ThenCreateFolderPath = TrueExit FunctionEnd If' Check to see if we've reached the drive rootIf Right(strPath, 2) = ":\" ThenCreateFolderPath = TrueExit FunctionEnd If' None of the other two cases were successful, so attempt to create the' folder On Error Resume Nextg_fso.CreateFolder strPathnError = Err.NumberstrErr = Err.DescriptionOn Error Goto 0If nError <> 0 Then' Error 76 = Path not found, meaning that the full path doesn't exist.' Call ourselves recursively until all the parent folders have been' created:If nError = 76 Then _CreateFolderPath(g_fso.GetParentFolderName(strPath))On Error Resume Nextg_fso.CreateFolder strPathnError = Err.NumberstrErr = Err.DescriptionOn Error Goto 0' If the Error is not = 76, then we have to bail since we no longer have' any hope of successfully creating each folder in the treeIf nError <> 0 Theng_strLastError = strErrExit FunctionEnd IfEnd IfCreateFolderPath = True End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function NN(nNumber, nDesiredDigits) ' Normalizes a number to have a number of zeros in front of it so that the ' total length of the number (displayed as a string) is nDesiredDigits. Dim nIndex, nOffbyDigits, strResultnOffbyDigits = nDesiredDigits - Len(nNumber)NN = nNumberIf nOffByDigits = 0 Then Exit FunctionIf nOffByDigits > 0 Then' The number provided doesn't have enough digitsstrResult = String(nOffbyDigits, "0") & nNumberElse' The number provided has too many digits. nOffByDigits = Abs(nOffByDigits)' Only remove leading digits if they're all insignificant (0).If Left(nNumber, nOffByDigits) = String(nOffByDigits, "0") ThenstrResult = Mid(nNumber, nOffByDigits + 1)Else' If leading digits beyond desired number length aren't 0, we'll' return the number as originally passed in.strResult = nNumberEnd IfEnd IfNN = strResult End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function GetMinutesAndSeconds(nTotalSecondsElapsed)Dim nMinutesElapsed, nSecondsValue, nSecondsElapsedIf nTotalSecondsElapsed = 0 ThenGetMinutesAndSeconds = "less than a second."Exit FunctionEnd If' Convert seconds into a fractional minutes value.nMinutesElapsed = nTotalSecondsElapsed / 60' Convert the decimal portion into the number of remaining seconds.nSecondsValue = nMinutesElapsed - Fix(nMinutesElapsed)nSecondsElapsed = Fix(nSecondsValue * 60)' Remove the fraction portion of minutes value, keeping only the digits to' the left of the decimal point.nMinutesElapsed = Fix(nMinutesElapsed)' Calculate the number of milliseconds using the four most significant' digits of only the decimal fraction portion of the number of seconds' elapsed.nMSeconds = Fix(1000 * (nTotalSecondsElapsed - Fix(nTotalSecondsElapsed)))' Form the final string to be returned and set it as the value of our' function.GetMinutesAndSeconds = nMinutesElapsed & " minutes, " & _nSecondsElapsed & " seconds, and " & _nMSeconds & " ms" End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function SessionExists(strSessionPath) ' Returns True if a session specified as value for strSessionPath already ' exists within the SecureCRT configuration. ' Returns False otherwise. On Error Resume NextSet objTosserConfig = crt.OpenSessionConfiguration(strSessionPath)nError = Err.NumberstrErr = Err.DescriptionOn Error Goto 0' We only used this to detect an error indicating non-existance of session.' Let's get rid of the reference now since we won't be using it:Set objTosserConfig = Nothing' If there wasn't any error opening the session, then it's a 100% indication' that the session named in strSessionPath already existsIf nError = 0 ThenSessionExists = TrueElseSessionExists = FalseEnd If End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function GetDateTimeTag()' Use WMI to get at the current time values. This info will be used' to avoid overwriting existing sessions by naming new sessions with' the current (unique) timestamp.Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")For Each objItem In colItemsstrLocalDateTime = objItem.LocalDateTimeExit ForNext' strLocalDateTime has the following pattern:' 20111013093717.418000-360 [ That is, YYYYMMDDHHMMSS.MILLIS(zone) ]GetDateTimeTag = Left(strLocalDateTime, 18) End Function'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Function GetConfigPath():Set objConfig = crt.OpenSessionConfiguration("Default")' Try and get at where the configuration folder is located. To achieve' this goal, we'll use one of SecureCRT's cross-platform path' directives that means "THE path this instance of SecureCRT' is using to load/save its configuration": ${VDS_CONFIG_PATH}.' First, let's use a session setting that we know will do the' translation between the cross-platform moniker ${VDS_CONFIG_PATH}' and the actual value... say, "Upload Directory V2"strOptionName = "Upload Directory V2"' Stash the original value, so we can restore it later...strOrigValue = objConfig.GetOption(strOptionName)' Now set the value to our moniker...objConfig.SetOption strOptionName, "${VDS_CONFIG_PATH}"' Make the change, so that the above templated name will get written' to the config... objConfig.Save' Now, load a fresh copy of the config, and pull the option... so' that SecureCRT will convert from the template path value to the' actual path value:Set objConfig = crt.OpenSessionConfiguration("Default")strConfigPath = objConfig.GetOption(strOptionName)' Now, let's restore the setting to its original valueobjConfig.SetOption strOptionName, strOrigValueobjConfig.Save' Now return the config pathGetConfigPath = strConfigPath End Function View Code

?

總結

以上是生活随笔為你收集整理的SecureCRT也能和Xshell一样批量导入主机的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

97高清免费视频 | 91精品网站在线观看 | 亚洲精品美女在线观看 | 国产精品18久久久久久久久 | 81精品国产乱码久久久久久 | 日本久久免费电影 | 人人爽人人澡人人添人人人人 | 国产剧情一区二区在线观看 | 国产亚洲一区二区三区 | 日韩一区二区三区观看 | 亚洲伊人网在线观看 | 欧美一级激情 | 超碰在线最新网址 | 天天射天天艹 | 九七人人干 | 不卡视频在线看 | 天天干天天天天 | 久99精品 | 久久综合久久综合这里只有精品 | 婷婷开心久久网 | 国产一二区精品 | 午夜狠狠操 | 国产精品久久久久久高潮 | 国产黄在线看 | 81国产精品久久久久久久久久 | 国产福利免费在线观看 | 中文字幕中文字幕在线中文字幕三区 | 国产精品国产亚洲精品看不卡15 | a视频在线观看免费 | 91插插影库| 香蕉97视频观看在线观看 | 国产亚洲精品精品精品 | 青青久草在线视频 | 国产精品ⅴa有声小说 | 精品久久综合 | 日韩精品电影在线播放 | 久久综合操 | 亚洲精品电影在线 | 亚洲性xxxx | 国产精品系列在线 | 黄色大片免费播放 | 久久久国产精品亚洲一区 | 亚洲一区精品二人人爽久久 | 一级黄色片在线观看 | 99热在 | 五月天亚洲综合小说网 | 香蕉视频久久 | 国产精品久久久久久久免费 | www黄| 中文字幕在线不卡国产视频 | 一区二区三区四区五区在线视频 | 99精品美女 | 久久国产精品99精国产 | 奇人奇案qvod | 成人免费视频网站 | 久久久久久美女 | 国产在线a | 国产精品视频99 | 91在线产啪 | 麻豆视频在线免费看 | 久久免费视频这里只有精品 | 99在线视频精品 | 免费看三级 | 91麻豆精品国产91久久久更新时间 | 精品国产片 | 香蕉久久久久久久 | 成人性生交大片免费看中文网站 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 久久久久久久影视 | 国产精品一区二区在线播放 | 日韩中文字幕亚洲一区二区va在线 | 黄色三级视频片 | 欧美黑吊大战白妞欧美 | 久久精品视频在线免费观看 | 久久精品一区二区三区四区 | 久久久久久久久久久久久久电影 | 毛片激情永久免费 | 中文字幕中文字幕中文字幕 | 国产精品视频999 | 欧美久久久一区二区三区 | 久久久黄色免费网站 | 欧美在线91 | 日本中文在线 | 亚洲另类交 | 亚洲综合一区二区精品导航 | 国产亚洲高清视频 | 狠狠干天天射 | 在线一二三四区 | 亚洲国产小视频在线观看 | 国产啊v在线观看 | 国产最顶级的黄色片在线免费观看 | 国产精品久久久久影视 | 亚洲国产中文字幕在线观看 | 91精品在线免费 | 国产一区欧美在线 | 日本三级不卡视频 | 正在播放 国产精品 | 久久久久久久免费 | 在线欧美小视频 | 91亚洲精品久久久蜜桃借种 | 精品国产一区二区三区久久久蜜臀 | 伊人天天色 | 中文在线字幕免 | 国精产品一二三线999 | 欧美一二区视频 | 亚洲精品国偷拍自产在线观看 | 亚洲男男gⅴgay双龙 | 亚洲精品在线网站 | 99热这里只有精品1 av中文字幕日韩 | 久久草草影视免费网 | 人人插人人 | 久久久这里有精品 | 99热在线精品观看 | 爱爱av网站| www.天天干.com | 免费的国产精品 | 国产免费一区二区三区最新 | 91试看 | 超级av在线 | 91视频在线看 | 久久精品99久久久久久2456 | 免费看黄网站在线 | 人人干天天干 | 97超碰人人模人人人爽人人爱 | 狠狠狠狠干 | 欧美激情视频一二三区 | 亚洲色五月 | 亚洲国产欧洲综合997久久, | 亚洲欧美日韩精品久久久 | 美女很黄免费网站 | 国产在线一线 | 欧美老人xxxx18 | 免费一级毛毛片 | 国产视频一二三 | 国产高清在线观看 | 免费成人在线网站 | 黄色成人av在线 | 亚洲国产日韩精品 | 99国产精品一区 | 国产精品精品国产婷婷这里av | 久久精品免视看 | 91秒拍国产福利一区 | a午夜在线| 天天射天天射天天 | 欧美粗又大 | 中文字幕一区2区3区 | 日韩大陆欧美高清视频区 | 一区二区三区国 | 国产色在线 | 久久综合中文字幕 | 九九视频在线播放 | 四虎影视精品永久在线观看 | 97视频在线观看播放 | 亚洲人人精品 | 99精品视频精品精品视频 | 亚洲最大的av网站 | 96av在线视频 | 在线v片 | 成人av资源网站 | 美女久久视频 | 亚洲1区 在线 | 黄色特级一级片 | 91国内产香蕉 | 在线99视频| 亚洲国产精久久久久久久 | 人人狠狠综合久久亚洲 | 午夜久久久久久久久 | 国产日韩精品一区二区三区 | 天天摸天天舔 | 97热久久免费频精品99 | 777xxx欧美| 精品国产免费人成在线观看 | 欧美一级免费片 | 国产无套一区二区三区久久 | 久久99精品久久久久久清纯直播 | 亚洲有 在线 | 亚洲国产一区av | 精品一区三区 | 日韩av电影中文字幕在线观看 | 婷婷丁香自拍 | 91精品久久久久久久久 | 免费看成人片 | 久久一区91 | 成人久久 | 国产精品 久久 | 亚洲一区二区三区毛片 | 国产片免费在线观看视频 | 91丨精品丨蝌蚪丨白丝jk | 婷婷丁香激情综合 | 中文字幕在线观看完整版电影 | 国产视频1 | 国产精品字幕 | 91精品久久久久久久91蜜桃 | 五月亚洲综合 | 日本三级久久 | 免费亚洲成人 | 99视频在线免费看 | 国产美腿白丝袜足在线av | 精品久久久久_ | 天天爱综合 | 97视频播放| 久久久久久久99 | 日韩试看| 91色网址 | 欧美日韩三级在线观看 | av在线小说 | 国产在线精品福利 | 日韩理论在线观看 | 在线观看一区视频 | 日韩久久精品一区二区三区下载 | 一区二区三区在线免费播放 | av丝袜在线| 久久久久免费电影 | 日韩在线播放av | 色综合久久久网 | 亚洲午夜久久久久久久久电影网 | 免费成人在线电影 | 91麻豆产精品久久久久久 | 狠狠婷婷 | 欧美成人播放 | 久久精品91久久久久久再现 | 4438全国亚洲精品观看视频 | 国产最新网站 | 超碰在线人 | 日韩美女av在线 | 伊人春色电影网 | 西西444www大胆高清图片 | 亚洲成人av片 | av先锋中文字幕 | 热久久这里只有精品 | 久久久久www | japanesexxx乱女另类| 中文字幕有码在线播放 | 人人澡人人添人人爽一区二区 | 色视频网站免费观看 | 视频精品一区二区三区 | 在线免费观看黄色小说 | 国产精品一区二区 91 | 天天摸夜夜操 | 国产人成一区二区三区影院 | 欧美精品一区二区在线播放 | 精品久久综合 | 日本爱爱免费视频 | 久久av影视 | 免费看的黄色网 | 久草9视频| 成人久久18免费网站麻豆 | 18av在线视频 | 久久一区二区三区国产精品 | 成人在线视频一区 | 91精品久久久久久久久 | 国产精品福利av | 亚洲视频一级 | 免费成人在线观看视频 | 久久影视中文字幕 | 中文字幕在线国产 | 久久久五月天 | 久久国产精品99久久久久久丝袜 | 欧美一级性生活 | 99久久爱| 中文字幕超清在线免费 | 天天干天天操天天搞 | 精品国产欧美 | 国产精品无av码在线观看 | www.色com | 久久久精品一区二区三区 | 在线99视频 | 欧美 国产 视频 | 天天干,天天射,天天操,天天摸 | 国产精品 日韩精品 | 免费日韩av电影 | 欧美日韩国内在线 | 成人av电影在线播放 | 天天草天天干天天 | 国产女做a爱免费视频 | 国产精品免费久久久久久久久久中文 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 欧美精品一区在线发布 | 激情影音先锋 | 日韩xxxxxxxxx| 欧美在线视频一区二区三区 | 久久久亚洲国产精品麻豆综合天堂 | 欧美福利片在线观看 | 五月婷婷伊人网 | 中文字幕乱码电影 | 日本视频久久久 | 欧美成人黄色 | 久久艹国产| 日本在线中文在线 | 日韩精品中文字幕久久臀 | 插婷婷| 91免费高清在线观看 | 中文字幕频道 | 日韩视频一区二区三区 | 在线观看黄色av | 91插插插网站| 99欧美| 亚洲精品在 | 久久精品五月 | 99热官网| 9999在线 | 五月婷婷色综合 | 国产伦精品一区二区三区无广告 | 日韩精品在线看 | 亚洲免费永久精品国产 | 2018亚洲男人天堂 | 蜜臀av夜夜澡人人爽人人桃色 | 亚洲自拍自偷 | 中文字幕乱视频 | 国产丝袜制服在线 | 国产成人久久久77777 | 日韩精品一区二区三区免费视频观看 | 国内精品视频在线播放 | 免费看三级黄色片 | 久操视频在线免费看 | 天天操人| www.久久色.com | 色视频网站免费观看 | 性色va | 人人爱人人添 | 一区 在线 影院 | 黄色成人在线 | 在线成人国产 | 国产91aaa | 91中文在线 | 亚洲在线观看av | 伊人电影在线观看 | 国产福利在线免费观看 | 天天操天天色综合 | 国产一卡二卡在线 | 天天色天天 | 久久九九影视网 | 久久成人精品电影 | 久久网址 | 麻花豆传媒mv在线观看 | 97久久精品午夜一区二区 | 91九色蝌蚪国产 | 亚洲精品乱码久久久一二三 | 一区二区不卡 | 国产a精品 | 日韩亚洲在线视频 | 国产精品一区二区果冻传媒 | 韩国中文三级 | 精品理论片 | 一区二区三区四区精品视频 | 亚洲精品视频免费在线观看 | 91黄站| 欧美亚洲一区二区在线 | 成人在线播放免费观看 | 国产午夜精品免费一区二区三区视频 | 精品一区精品二区 | 手机在线中文字幕 | 久久免费视频在线观看30 | 国产精品av免费在线观看 | 不卡电影免费在线播放一区 | 国产不卡免费 | 免费看黄的视频 | 亚洲综合在线五月天 | 美女在线免费观看视频 | 精品久久久免费视频 | 91看片一区二区三区 | 在线国产能看的 | 视频国产一区二区三区 | 成人av在线影院 | 在线免费观看麻豆 | 国产一级视屏 | www.夜夜操 | 国产精品毛片久久蜜 | 伊人影院av| 久草电影在线观看 | 午夜久久久久久久久久影院 | 毛片视频电影 | 欧美色精品天天在线观看视频 | 不卡av在线免费观看 | 18国产精品福利片久久婷 | 亚洲精品视频在线播放 | 日韩精选在线观看 | 在线天堂亚洲 | 婷婷五月情 | 香蕉影院在线播放 | 在线观看片 | 亚洲精品免费在线 | 国产成人在线观看免费 | 国产一线天在线观看 | 亚洲精品在线资源 | 特级xxxxx欧美 | 日三级在线 | 亚洲精品av在线 | 亚洲欧美国产精品18p | 中文字幕成人一区 | 欧美日韩国产网站 | 日韩激情视频 | 99精品99 | 天天躁日日躁狠狠 | 国产精品美女免费看 | 日韩视频一区二区三区 | 91成人免费电影 | 黄色片视频免费 | 国产高清视频在线 | 久久久国产一区二区 | 一区二区三区视频网站 | 久久综合久色欧美综合狠狠 | 337p日本欧洲亚洲大胆裸体艺术 | 久久综合桃花 | 欧美日韩一区二区在线 | av一级二级 | 精品久久福利 | 日韩欧美v| 日日干天天射 | 日韩欧美区 | 欧美日韩在线精品 | 久久久久久国产精品免费 | 人人爽人人爽人人爽学生一级 | 久久色在线观看 | 国产一区在线看 | 日韩大片在线免费观看 | 黄色视屏在线免费观看 | 久久久久久久久影视 | 婷婷四房综合激情五月 | 久久99在线视频 | 超碰97人人干 | 国产精品免费久久久久久久久久中文 | 国产 视频 久久 | 色多多污污在线观看 | 人人cao| 手机看片福利 | 久久99精品国产 | 一区二区三区在线免费播放 | 国产亚洲精品福利 | 夜夜夜夜操 | 青春草视频在线播放 | 91免费视频网站在线观看 | 四虎成人精品永久免费av | 日韩黄视频 | 九九九九热精品免费视频点播观看 | 99九九热只有国产精品 | 国产91精品看黄网站 | 91色影院 | 免费看国产a | 狠狠精品| 亚洲国产精品va在线看黑人 | 日日夜夜噜 | 99精品偷拍视频一区二区三区 | 午夜av免费看| 国产人成精品一区二区三 | 久久精品人人做人人综合老师 | 精品999在线观看 | 97精品久久 | 99久久久成人国产精品 | 婷婷激情在线 | 狠狠狠狠狠狠狠狠 | 色综合久久久久 | 欧美日韩18 | 亚洲免费永久精品国产 | 亚州av网站 | 日韩va欧美va亚洲va久久 | 日韩夜夜爽 | 中文字幕国产一区二区 | 免费视频网 | 国产麻豆精品在线观看 | 日韩美女黄色片 | 国产精品18videosex性欧美 | 精品a视频 | av中文字幕第一页 | 久久精品一区二 | 亚洲人成人在线 | 国产欧美最新羞羞视频在线观看 | 涩涩网站在线播放 | 国产精品18毛片一区二区 | 国产视频亚洲精品 | 亚洲综合欧美激情 | 狠狠干夜夜爽 | 欧美日韩不卡在线 | 成人黄色电影在线 | 91大神免费视频 | 精品产品国产在线不卡 | 美女黄久久 | 国产一区网址 | 中文字幕视频网 | 精品国产激情 | 日韩毛片久久久 | 在线播放 日韩专区 | 日韩在线视频国产 | 天天操狠狠操 | 在线观看你懂的网址 | www.com黄 | 欧美 亚洲 另类 激情 另类 | 香蕉久草 | 国产精品毛片久久久 | 久草精品视频在线播放 | 在线之家免费在线观看电影 | 国产精品99久久久久久久久久久久 | 国产精品中文字幕在线观看 | 色欧美成人精品a∨在线观看 | 五月激情在线 | 人人澡人摸人人添学生av | 91看片麻豆 | 波多野结衣电影一区二区 | 色福利网站 | 欧美精品久久久久久久久老牛影院 | 最新午夜 | jizz欧美性9 国产一区高清在线观看 | 91爱爱中文字幕 | 国产剧在线观看片 | 97人人添人澡人人爽超碰动图 | 欧美夫妻生活视频 | 日韩免费在线播放 | 国产精品久久久久久久午夜 | 日韩免费一级电影 | 亚洲精区二区三区四区麻豆 | 欧美日韩在线观看一区 | 91视频首页| 丁香网婷婷| 悠悠av资源片 | 精品国产电影一区 | 久久1区 | 免费高清在线视频一区· | av短片在线 | 婷婷六月激情 | 91资源在线视频 | 97av视频| 免费在线观看毛片网站 | 久久成人综合 | 99国产精品免费网站 | 国产精品18久久久久久久网站 | 久久高清 | 国产精品一区二区在线 | 四虎影视成人精品国库在线观看 | 91综合视频在线观看 | 久久热亚洲 | 黄色录像av | 久久久久激情电影 | 欧美在线视频日韩 | 国产黄色a| 国产91大片 | 国产精品成人久久久 | 欧美视频日韩 | 99久久国产免费,99久久国产免费大片 | 在线天堂日本 | 亚洲第一区在线播放 | 黄色小说免费在线观看 | 国产精品久久婷婷六月丁香 | 国产 欧美 日产久久 | 色综合久久久久久久久五月 | 亚洲午夜电影网 | 成人av一区二区兰花在线播放 | 久久久久久久久久久久99 | 成年人视频在线 | 欧美高清成人 | 欧美极品一区二区三区 | 中文在线a∨在线 | 久久久国产日韩 | 亚洲精品国产成人 | 亚洲成av人片 | 狠狠gao | 日日草天天草 | 97色视频在线 | 福利视频在线看 | 97国产小视频 | 久久久精品国产一区二区 | 亚洲精品视频在线播放 | 国产精华国产精品 | 夜夜操综合网 | 超碰97国产精品人人cao | 国产亚洲欧洲 | 国产精品久久久久久久久久三级 | 少妇自拍av | 97夜夜澡人人双人人人喊 | 色婷婷a| 在线看国产日韩 | 亚洲免费不卡 | 国产成人一区二区三区在线观看 | 五月开心婷婷网 | 一区二区三区免费网站 | 亚洲黄色成人网 | 五月婷综合 | 中文国产成人精品久久一 | 久久视频中文字幕 | 久久久久久久久毛片 | 最新日韩精品 | 久久久国产一区二区三区四区小说 | 日日操网| 人人干人人做 | 精品久久久久亚洲 | 亚洲无吗av | 国产亚洲精品精品精品 | 精品亚洲午夜久久久久91 | 99精品一区二区 | 黄色在线观看免费网站 | 国产99在线免费 | 日韩欧美视频免费看 | 久久 精品一区 | 天天色天天综合 | 久久精品女人毛片国产 | 亚洲精品在线二区 | 精品麻豆入口免费 | 精品在线一区二区三区 | 亚洲成人动漫在线观看 | 在线观看成人av | 青青草国产精品 | 亚洲欧美精品一区 | 五月婷婷一区二区三区 | 日韩在线播放欧美字幕 | 国产一区在线看 | 国产黄色观看 | 亚洲国产中文字幕在线观看 | 国产丝袜制服在线 | 天天干,天天操,天天射 | 天天操天天谢 | www.夜色.com | 日韩欧美国产激情在线播放 | 九九免费在线观看 | 欧美激情另类文学 | www.黄色小说.com | 免费在线观看91 | 日韩欧美不卡 | 深爱综合网 | 久久高清免费视频 | 国产精品视屏 | 欧美天堂久久 | 国产精品高清在线观看 | 国产手机av在线 | 国产一区二区三区黄 | 国产一区二区三区高清播放 | 久久成人在线视频 | 色婷婷九月 | 韩国av电影在线观看 | 国产五码一区 | 毛片二区| 麻豆国产精品va在线观看不卡 | 亚洲成 人精品 | 极品嫩模被强到高潮呻吟91 | 五月天丁香综合 | 亚洲精品九九 | 黄色国产在线 | 国产黄色一级大片 | 香蕉在线视频观看 | 99视频导航 | 国产一级视频免费看 | 日韩欧美视频一区二区 | 日韩色高清 | 欧美一区二区精品在线 | 91精品啪在线观看国产81旧版 | 日韩免费看片 | 国产精品3 | 毛片永久免费 | 日韩精品观看 | 久久99国产视频 | 久9在线 | 亚洲精品高清在线观看 | 制服丝袜一区二区 | 国产精品毛片完整版 | 麻豆精品在线 | 亚洲伊人婷婷 | 91精彩视频 | 日本久久成人中文字幕电影 | av一区在线 | 天堂入口网站 | 色欲综合视频天天天 | 久久久免费精品国产一区二区 | 天天天干天天天操 | 国产精品成人av电影 | 99r在线 | 九九久久国产精品 | 在线电影中文字幕 | 免费在线a | 69久久夜色精品国产69 | 欧美日韩一区二区在线观看 | 亚洲精品2区 | 亚洲高清视频在线 | 精品亚洲成a人在线观看 | 九九热有精品 | 亚洲va欧美va人人爽春色影视 | 欧美久久影院 | 在线黄网站 | www.久久免费视频 | 成人av电影免费观看 | 在线免费观看视频一区 | 日日夜夜干 | 久久久久人人 | 在线视频日韩一区 | 亚洲日本在线视频观看 | 久久免费视频1 | 亚洲91精品 | 亚洲高清资源 | 精品国产黄色片 | 超碰97国产在线 | 九九九九九国产 | 色综合久久久久久久久五月 | 亚洲在线视频免费 | 精品视频中文字幕 | 亚洲女欲精品久久久久久久18 | 久草线| 三级黄色在线观看 | 国产亚洲一级高清 | www国产亚洲 | 又黄又刺激又爽的视频 | 久久99亚洲精品 | 免费一级片在线观看 | 6080yy午夜一二三区久久 | 超碰com| 久久久久综合 | 九九热av | 国产亚洲精品久久久久久久久久久久 | 色婷婷福利 | 欧美精品天堂 | 日日夜夜免费精品视频 | 久久观看免费视频 | 午夜久久久久 | 欧美怡红院视频 | 日本成人免费在线观看 | 国产经典av | 日韩黄色在线观看 | 又黄又爽又色无遮挡免费 | 国产免费小视频 | 国产精品成人在线观看 | 四虎永久免费在线观看 | 欧美一级爽 | 国产黄色大片 | 亚洲一级黄色片 | 五月综合色| 亚洲精品大全 | 99视频| 日本中文一区二区 | 有码中文字幕 | www.久久爱.cn | 久久免费成人精品视频 | 成人免费视频网站 | 99在线热播 | 最新极品jizzhd欧美 | 在线看片视频 | 欧美精品一级视频 | 亚洲欧美日韩一区二区三区在线观看 | 国产成年免费视频 | 精品91视频 | 人人爽人人乐 | 一区二区视频在线免费观看 | 精品久久久久久久久久久久久久久久 | 天堂va在线高清一区 | 人人插人人艹 | 日韩免费视频一区二区 | 一级淫片在线观看 | 黄色精品久久久 | 天堂在线v| 免费视频网 | 国产h在线播放 | 亚洲黄色精品 | 精品久久久久久亚洲综合网 | 国产97在线播放 | 中文字幕日韩av | 婷婷伊人五月天 | 99r在线精品 | 国产精品视频免费在线观看 | 三级黄色免费片 | 日韩网站在线免费观看 | 四虎成人精品永久免费av九九 | 久久香蕉电影网 | 成人av资源在线 | www.天天色.com| 波多野结衣在线观看视频 | 久久精品79国产精品 | 中文字幕在线观看2018 | 中文字幕色播 | 久久久久欠精品国产毛片国产毛生 | 欧美成年人在线观看 | 免费色视频在线 | 人人射| av看片在线 | 精品视频成人 | 碰天天操天天 | 麻豆久久久久久久 | 夜夜躁日日躁狠狠久久av | 中文字幕国产在线 | 国产精品久久久久久久久久直播 | 五月婷婷.com | 国产精品中文久久久久久久 | 日本性xxxxx| 免费视频黄 | 91视频网址入口 | 色永久免费视频 | 国产精品女人久久久 | 中文字幕在线免费97 | 成人av一区二区兰花在线播放 | 久久躁日日躁aaaaxxxx | 国产偷国产偷亚洲清高 | 综合久久影院 | 毛片网站免费在线观看 | 狠狠久久| 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产精品美女久久久免费 | 91视频在线国产 | 色欧美日韩 | 日本91在线| 超碰在线日韩 | 2023亚洲精品国偷拍自产在线 | 精品久久福利 | 日本三级吹潮在线 | 国产精品不卡在线 | av片在线看 | 99精品久久久 | 国产精品美女网站 | 国产夫妻性生活自拍 | 色综合天天狠天天透天天伊人 | 成人小电影在线看 | 亚洲成人精品av | 丁香九月婷婷 | 天天天干天天天操 | 亚洲色五月 | 国产一区二区在线看 | 黄色成人av| 天天射天天射天天射 | www.黄色片.com | 97**国产露脸精品国产 | 欧美午夜性| 免费看成人片 | 夜夜爽天天爽 | 久久精品一级片 | 韩国av在线播放 | 91亚洲欧美激情 | 久久精品一二三 | 久久情侣偷拍 | 99国产情侣在线播放 | 国产人成在线观看 | 精品99在线视频 | 免费大片黄在线 | 国产精品高潮呻吟久久av无 | 在线中文字母电影观看 | 一区二区三区观看 | 国产小视频免费在线网址 | 久久婷亚洲五月一区天天躁 | 久久久久久久久久电影 | 成人免费看片网址 | 91精品视频播放 | 欧美不卡视频在线 | 久久99精品波多结衣一区 | 欧美十八 | 欧美日本国产在线观看 | 在线视频中文字幕一区 | 91精品在线观看视频 | 亚洲乱码在线 | 欧美一级日韩免费不卡 | 中日韩欧美精彩视频 | 蜜臀久久99精品久久久无需会员 | 天天干 夜夜操 | 久久久久久久久久久精 | 色网站国产精品 | 国产午夜精品一区二区三区在线观看 | 中文字幕日本在线 | 国产成人精品一区二区三区网站观看 | 九草在线视频 | 久久最新| 中文字幕资源网在线观看 | 99精品视频免费看 | av+在线播放在线播放 | 精品国产一区二区三区不卡 | 91视频链接| 6699私人影院 | 欧美日韩在线观看一区 | 91av电影| 97精品欧美91久久久久久 | 999久久国精品免费观看网站 | 黄色小说网站在线 | 日韩精品不卡在线观看 | 日韩高清无线码2023 | 久久9999久久| av中文字幕在线观看网站 | 在线视频 成人 | 欧美日韩伦理在线 | 久久刺激视频 | 国产亚洲在线 | 视频国产在线 | 免费福利在线观看 | 久久另类视频 | 久久国产高清 | japanesexxxhd奶水| 日韩一区二区三区免费视频 | 日韩精品一区二区三区中文字幕 | 国产亚洲久一区二区 | 国产乱码精品一区二区三区介绍 | 精品美女久久久久久免费 | 国产精品欧美日韩在线观看 | 亚洲美女视频在线观看 | 国产亚洲免费的视频看 | 最近中文字幕免费大全 | 亚洲欧美日韩精品久久久 | 成人在线播放视频 | 四虎影视成人精品 | 亚洲综合在线五月 | 久久综合操 | 亚洲综合成人在线 | 亚洲美女精品视频 | 久久精品在线免费观看 | 欧美在一区 | 在线观看视频你懂 | 91一区一区三区 | 亚洲精品乱码久久久久久按摩 | 91精品免费看 | 国产精品精品国产色婷婷 | av电影免费看 | 最近中文字幕在线 | 久久午夜精品视频 | 成人av在线资源 | 天堂网一区二区三区 | 91精品蜜桃 | 欧美日韩一二三四区 | 一级a性色生活片久久毛片波多野 | 日韩欧美综合视频 | 中文字幕xxxx| 亚洲国产剧情 | 中文字幕在线观看第二页 | www.69xx| 欧美日韩不卡在线 | 成人在线观看资源 | 99视频久| 国内精品久久久久久久影视麻豆 | 中文国产字幕在线观看 | 97电影院在线观看 | 欧美一区二区三区在线看 | 伊人天天操 | 久久久久久久99 | 亚洲午夜精 | 精品国产福利在线 | 国产亚洲va综合人人澡精品 | 四虎成人网 | 久久免费a | 国产精品一区二区三区免费视频 | 99精品在线免费观看 | 久草电影在线观看 | 亚洲一区久久久 | 色婷婷五 | 91精品在线麻豆 | 日韩激情视频在线观看 | 精品视频在线观看 | 九九视频这里只有精品 | 国产精品影音先锋 | 深爱五月激情网 | 亚洲激情电影在线 | 99人成在线观看视频 | 伊人日日干 | 国产手机av | 久草视频视频在线播放 | 国产成人专区 | 国产精品6 | 中文字幕在线观 | 奇米影视777影音先锋 | 91自拍成人 | 久久久99精品免费观看app | 欧美激情综合色 | 黄色片网站大全 | 日韩免费一区二区在线观看 | 久久久免费 | 久久成人一区二区 | 久久精品99国产国产精 | 亚洲另类在线视频 | 国产女人18毛片水真多18精品 | 91激情视频在线 | 亚洲影视九九影院在线观看 | 国产97在线观看 | 视频国产精品 | 91视频下载 | 中文字幕在线观看播放 | 91在线视频免费91 | 激情五月播播久久久精品 | 九九视频这里只有精品 | 日韩成人看片 | 500部大龄熟乱视频 欧美日本三级 | 中文国产字幕 | 国产精品麻 | 四虎国产精品免费 | 在线一二三四区 | 国产黄色视 | 国产午夜一区二区 | 亚洲国产精品成人av | 国产电影一区二区三区四区 | 欧美少妇xxx| 日日摸日日添夜夜爽97 | 久久艹国产视频 | 丁香婷婷在线 | 亚洲精品乱码久久久久久蜜桃欧美 | 中文字幕中文字幕中文字幕 | 色综合色综合久久综合频道88 | 国产精品毛片一区视频 | 色网站视频 | 日三级在线| 日韩精品一区二区在线观看 | 成人av中文字幕在线观看 | 国产91全国探花系列在线播放 | 成人理论在线观看 | 色网站在线观看 | 久99久精品| 亚洲成人频道 | 久久xxxx| 在线观看网站黄 | 国产精品福利av | 国产免费国产 | 91亚瑟视频 | 国产久草在线观看 | 久久少妇|