Winscp создать символическую ссылку
WinSCP is a secure file transfer graphical utility. But, it has more features than what you can see with a GUI. The WinSCP command line also exists to help you manage and automate file transfers from your console too!
To learn the ins and outs of the WinSCP GUI, check out this post’s complementing post, The WinSCP GUI: The Ultimate Guide.
In this WinSCP Command-Line Ultimate Guide, you’re going to learn, step-by-step, just about every command-line feature WinSCP provides to help you do more with WinSCP.
Table of Contents
Подключение к серверам
Программа WinSCP позволяет создавать и, по желанию пользователя – сохранять, профили подключений к различным серверам, поддерживающим соответствующие прикладные протоколы FTP, FTPS, SFTP, SCP, WebDAV, Amazon S3.
Для создания нового подключения используется кнопка Новое соединение - Новое подключение или комбинация клавиш CTRL+N . Далее необходимо выбрать параметры соединения – протокол передачи данных, наличие и свойства шифрования, имя сервера (IP-адрес) и номер порта, а также - учетную запись пользователя, используемую при подключении к указанному серверу:
После завершения настройки подключения, можно выполнить его сохранение нажав кнопку Сохранить Сохраненное соединение можно использовать в качестве соединения по умолчанию, которое будет выбираться при запуске программы WinSCP.
В нижней части окна со списком соединений размещены кнопки Инструменты и Действия предоставляющие пользователю дополнительные возможности по сохранению и восстановлению конфигурации подключений, взаимодействию с программой PuTTY , стиранию следов работы программы и вызову ее настроек.
More from ATA Learning & Partners
Автоматизация обмена данными с применением WinSCP
Программа WinSCP имеет поддержку командной строки и развитую систему создания и выполнения сценариев, что позволяет легко реализовать автоматизацию повторяющихся процессов приема и передачи данных.
"C:\Program Files (x86)\WinSCP\WinSCP.exe" /console
Для удобства работы с командной строкой WinSCP можно добавить путь к каталогу программы в переменную PATH стандартными средствами Windows либо средствами самой WinSCP: Параметры - Настройки - Интеграция - Добавить папку WinSCP в путь поиска . Поскольку добавление пути поиска WinSCP выполняется в системную переменную PATH, требуется запуск программы от имени администратора и перезагрузка Windows для применения изменений.
По умолчанию, в окне командной строки WinSCP используется кодировка UTF-8 . При желании, внешний вид и поведение консоли WinSCP можно настроить под свои предпочтения, например, включив выделение текста мышью и сменив цветовую палитру на черные символы на белом фоне.
Conclusion
WinSCP is a free tool with a whole lot of features. With this CLI guide and the WinSCP GUI Guide, you should now understand what’s possible with this feature-rich tool! From transferring files, running commands, running scripts, and even converting key types for you, WinSCP can do a lot.
What are you plans for using WinSCP now?
Hate ads? Want to support the writer? Get many of our tutorials packaged as an ATA Guidebook.
Передача данных.
Двухпанельный интерфейс по образу Total Commander, как правило, удобнее интерфейса в стиле Проводника Windows. В левом окне отображается локальная файловая система, в правом – файловая система сервера, к которому выполнено подключение.
Настройки WinSCP позволяют поменять панели местами - Настройки - Внешний вид - Коммандер - Панели - включить Поменять панели местами (локальная справа, сервер слева)
В процессе передачи данных отображается статистическая информация:
Важной особенностью Winscp является возможность синхронизации локальных и удаленных данных. Режим синхронизации включается через меню Команды - Синхронизация .
В настройках синхронизации можно выбрать 3 направления:
Компьютер - изменения в удаленном каталоге применяются по отношению к локальному.
Сервер - изменения в локальном каталоге применяются по отношению к удаленному.
В обе стороны - изменения выполняются как в удаленном, так и в локальном каталогах.
Кроме направления синхронизации, можно выбрать также и ее режим:
Синхронизация файлов - основной режим синхронизации в WinSCP. Реализуется алгоритм:
- Файлы, более новые в каталоге источника передаются в каталог приемника.
- Файлы, присутствующие в каталоге источника, но отсутствующие в каталоге приемника передаются в каталог приемника, если не включен режим Лишь имеющиеся файлы в настройках Параметры синхронизации .
- Файлы, существующие в каталоге приемника, но отсутствующие в каталоге источника могут быть удалены, если включен режим Удалять файлы в настройках Параметры синхронизации .
- При направлении синхронизации В обе стороны файлы, отсутствующие в противоположном каталоге считаются новыми и передаются, если не включен режим Лишь имеющиеся файлы . Удаление файлов при использовании данного направления синхронизации не выполняется.
Зеркальные файлы - различающиеся файлы (более новые и более старые) в каталоге источника передаются в каталог приемника.
Синхр. штампов времени - режим активен, если в удаленной и локальной системе существует возможность определения времени модификации файлов. Обычно, это подключение по протоколу SFTP. Никакие файлы не изменяются и не удаляются. Если один и тот же файл существует в каталоге источника и в каталоге приемника, можно изменить его отметку времени на время модификации либо источника, либо приемника по выбору пользователя. При направлении синхронизации В обе стороны обновляется отметка времени более старых файлов.
Использование планировщика заданий для автоматизации выполнения сценариев
Для запуска Планировщика заданий можно воспользоваться поиском в Windows, перейти в “Панель управления” - “Администрирование” - “Планировщик заданий”, либо выполнить команду taskschd.msc .
Библиотека планировщика заданий , отображаемая в левой части окна оснастки планировщика, имеет довольно непростую иерархическую структуру, поэтому, можно создать отдельную папку, с использованием контекстного меню, вызываемого правой кнопкой мышки и пункта Создать папку , ввести имя папки, и в дальнейшем, именно в ней создавать свои тестовые или рабочие задания.
Для создания задач планировщика могут использоваться два мастера, вызываемые в режимах Создать простую задачу и Создать задачу . При создании простой задачи используется минимальный набор параметров, не предусматривающий наличие множественных условий выполнения и множественных действий. Для запуска сценариев WinSCP по расписанию, вполне достаточно создания простой задачи.
Новую задачу можно создать с использованием пункта меню Действие - Создать простую задачу либо через контекстное меню, вызываемое правой кнопкой мышки на уровне созданной папки в библиотеке планировщика, либо на уровне "Библиотека планировщика", если такая папка не нужна. После чего запускается мастер создания задачи:
На шаге Общие введите имя задания и его описание. Имя, для примера - DownloadFiles , а описание "Download files from site.com". Описание может быть произвольным текстом, но желательно, чтобы оно отражало суть создаваемой задачи.
На шаге Триггер выполняется настройка условий, при возникновении которых, будет запущена создаваемая задача.
На шаге Действия в качестве действия выбираем Запуск программы , в виде которой будет выступать созданный ранее командный файл Script1.bat , который нужно выбрать с использованием кнопки Обзор… .
На шаге Завершение нажмите кнопку Готово и задание будет создано. Настройки созданного задания можно изменить в любое время при наличии у пользователя соответствующих прав.
WinSCP — графический клиент для Windows, классический двухпанельный или как в проводнике. Обеспечивает защищённое копирование файлов между компьютером и серверами, поддерживающими протоколы SFTP, FTP, SCP, WebDAW и S3. Распространяется по лицензии GNU GPL.
- Графический двухпанельный интерфейс и как в проводнике Windows Explorer (на выбор).
- Локализации интерфейса для нескольких десятков языков, в том числе русского.
- Интеграция с Windows (поддержка Drag&Drop, ярлыков, поддержка схем URL).
- Все основные файловые операции.
- Поддержка протоколов SFTP и SCP поверх SSH-1 и SSH-2, а также FTP, WebDAV и S3.
- Автоматизация при помощи скриптов и интерфейса командной строки.
- Синхронизация папок по нескольким автоматическим и полуавтоматическим алгоритмам.
- Встроенный текстовый редактор.
- Возможность сохранять настройки соединений.
- Совместимость настроек с PuTTY.
- Поддержка различных типов авторизации: по паролю, аутентификации с открытым ключом, Kerberos.
- Интеграция с Pageant (PuTTY Agent) с поддержкой авторизации по открытым ключам.
- Защита сохранённых настроек мастер-паролем.
- Возможность работы с использованием файла конфигурации вместо хранения настроек в реестре, что удобно при запуске с переносных носителей.
При помощи WinSCP можно соединиться с сервером SSH (Secure Shell) по протоколу SFTP (SSH File Transfer Protocol) или SCP (Secure Copy Protocol). Обычно это нужно для обмена файлами с машинами под ОС Linux. SFTP входит в реализацию протокола SSH-2. SCP входит в реализацию протокола SSH-1. В последнее время добавилась поддержка протоколов FTP, WebDAV и S3.
FTP протокол используется для передачи файлов, поддерживается FTPS (FTP Secure, FTP-SSL).
Amazon S3 (Simple Storage Service) — это служба Amazon Web Services (AWS). Она даёт возможность соединяться с облаком Amazon посредством интерфейсов REST, SOAP, и BitTorrent. WinSCP для соединения по S3 использует REST интерфейс. Облака Google Cloud Storage, Backblaze B2, Dell ECS, DigitalOcean Spaces, MinIO, Wasabi поддерживают S3 API, поэтому WinSCP также может работать с ними по S3.
WinSCP выполняет все основные операции с файлами:
- загружать и выгружать файлы
- переименовывать файлы и папки
- создавать папки
- изменять свойства файлов и папок
- создавать символические ссылки и ярлыки
Программа предлагает два пользовательских интерфейса, каждый из которых может быть настроен при помощи множества параметров. Графический интерфейс как в проводнике Windows Explorer может выступать в качестве файлового менеджера.
Windows 10, 8, 7 и Vista поддерживают символические ссылки, которые указывают на файл или папку в вашей системе. Вы можете создать их с помощью командной строки или стороннего инструмента под названием Link Shell Extension.
WinSCP.exe: Session Logging
As you run commands with winscp.exe, you may want a record of what commands you’ve run. If so, WinSCP’s session logging is for you. WinSCP logs commands via the command line on a per-session basis defined when you connect to the session.
To enable session logging requires up to three different parameters when connecting to a session, as shown below.
- /log – The path to the local file to store command history in.
- /loglevel – An optional parameter changing the level of verbosity logged. By default, the log level is set to Normal. But, you can change the level to Reduced or 1 for the least granular logging to Debug or 2 for the most granular logging.
- /logsize – An optional parameter used to define how big the log file can get and how long until WinSCP rotates the log file. This parameter value is defined as * .
You can see an example below. In this example, winscp.exe will connect to the 54.179.19.216 host and log all activity to the C:\winscp.log file at a Debug level and will keep (5) 10MB log files ( 5*10MB ).
Although you have seen various ways to connect to a remote host and do many different things, you were doing so with training wheels on. You were using winscp.exe.
Next, run the open command to open a session followed by the site you’d like to connect to.
You’ll now see below that WinSCP connects to the remote host defined in the site ( Adamsite ), in this case. Once connected, you can initiate commands and receive output just like you were in a typical SSH session.
WinSCP.exe: Downloading Files using a Site
In the previous examples, you had to specify a session URL. Session URLs are useful when you don’t have a WinSCP site to reference, containing all of the connection settings. If you’ve been using WinSCP for a while, chances are you have a few sites created.
Using winscp.exe, you can leverage those sites created with the GUI and use them to connect to a remote host saving yourself from remembering how to create a session URL!
To find saved sites in WinSCP, click on the Session menu —> Sites —> Site Manager.
To demonstrate using sites with winscp.exe, let’s first cover downloading files using a site.
1. First, connect to the remote host defined in the site. The example below already has a WinSCP site created called Adamsite .
WinSCP will then display a status notification, as shown below.
Connecting to remote machine using a Site
2. Once connected, run winscp.exe to open a session providing just the protocol ( sftp ), site name ( Adamsite ), and remote directory ( /tmp ) this time.
WinSCP will bring up the graphical WinSCP transfer settings dialog box again with the folder to download the files to and the pattern ( \*.* ) indicating all files in the directory.
Click OK, and WinSCP will attempt to download all files in the /tmp directory on the remote host over SFTP to the local directory chosen in the popup box.
Downloading Files using a Site
Uploading a file or entire folder from your local machine to a remote host is similar. But, you must also specify the /upload switch with the file or directory path to upload, e.g., winscp.exe Site3 /upload .\license.txt . Note that you don’t have to use the full URL ( sftp://Adamsite/tmp ).
Как удалить символические ссылки
Чтобы избавиться от символической ссылки, вы можете просто удалить её, как и любой другой файл или каталог. Только будьте осторожны: удаляйте ссылку, а не файл или каталог, к которому она привязана.
ATA Learning Guidebooks
ATA Learning is known for its high-quality written tutorials in the form of blog posts. Support ATA Learning with ATA Guidebook PDF eBooks available offline and with no ads!
Symlinks (Symbolic Links) are also known as Soft links, and they are widely used on Linux, as well as in other OS, in Windows they are called “shortcuts”, basically they are just small files acting as links to an actual file, you can have as many symlinks as needed and removing them doesn’t affect the actual file.
Как создать символическую ссылку с помощью графического инструмента
Если вы хотите создавать символические ссылки с помощью инструмента с графическим интерфейсом, загрузите Link Shell Extension. Обязательно загрузите соответствующий пакет необходимых библиотек – найдёте их на странице загрузки инструмента.
После установки найдите файл или папку, для которой вы хотите создать ссылку, щелкните её правой кнопкой мыши и выберите «Запомнить источник ссылки» в контекстном меню.
Затем вы можете щелкнуть правой кнопкой мыши в другой папке, указать на меню «Поместить как» и выбрать тип создаваемой ссылки.
WinSCP.exe: Connecting to Remote Hosts with Session URLs
The simplest way to connect to a remote host with WinSCP is running winscp.exe with the session URL as a parameter. In the example below, WinSCP will connect to the 54.179.19.216 host using a username and automate and a password of automate over sftp . When connected, it will drop into the /tmp directory.
Rather than use a password, you could also connect to a remote host using a private key by specifying the /privatekey parameter. Using a private key is more secure than using a simple password but is out of the scope of this tutorial.
Below you can see an example of connecting to the 54.179.19.216 host using a username and automate over scp with a private key called mykey.ppk .
Получение справки по командам WinSCP
Большинство внутренних команд WinSCP имеют синтаксическое и смысловое сходство с командами командной строки Linux. Для получения встроенной справки используется команда help :
call - Выполняет заданную команду на сервере
cd - Изменяет папку на сервере
checksum - Вычисляет контрольную сумму файлов на сервере
chmod - Изменить права доступа к файлу на сервере
close - Закрывает соединение
cp - Дупликация/дубль удалённого файла
exit - Закрывает все соединения и завершает программу
get - Загрузить файл с сервера
help - Отображает справку
keepuptodate - Постоянно отслеживать изменения в локальной папке
lcd - Изменить локальную папку
lls - Отобразить содержимое локальной папки
ln - Создать ссылку на сервере
lpwd - Отобразить содержимое локальной папки
ls - Отобразить содержимое папки на сервере
mkdir - Создать папку на сервере
mv - Переименование/перенос файла на сервере
open - Соединение с сервером
option - Просмотреть/задать параметры сценария
put - Выгрузить файл на сервер
pwd - Печатает имя папки сервера
rm - Удалить файл с сервера
rmdir - Удалить папку с сервера
session - Показать список активных соединений или выбрать активное соединение
stat - Запрашивает атрибуты файла на сервере
synchronize - Синхронизировать папку на сервере с локальной
Generating a Session URL
When you work with WinSCP in the GUI, you have the luxury of the Login window shown below. This window allows you to specify remote connection properties. The command-line doesn’t have windows and interactivity like this. Instead, you must define those attributes another way.
Connection attributes
To tell the WinSCP command line where to connect, you must provide a string called a session URL. This session URL is a combination of each of the connection attributes you had defined in the GUI above.
A session URL, at it’s simplest, is defined via the schema:
For example, if you’d like to connect to the 1.1.1.1 remote host with the user adam , password pw via the SFTP protocol with WinSCP, your session URL would look like this:
If you’ve already created a WinSCP site, you can find the site’s session URL by opening the WinSCP GUI, clicking on the Session menu, right-clicking on the site, and choosing to Generate Session URL/Code.
WinSCP site
In the Session URL dialog box above, you have various options to customize the session URL, which will dictate how WinSCP connects to a remote host.
- Initial directory – The remote directory that WinSCP will bring up when first connecting.
- SSH host key – An existing SSH key to authenticate to the remote host.
- WinSCP-specific – Generates a “WinSCP-specific” session URL such as WinSCP-sftp:// or winscp-. A WinSCP-specific URL is useful when you only need WinSCP to understand the URL. If you’d generate a session URL for FTP, for example, you’d be contending with your default web browser if you’d click the link. – This option is sometimes used with the WinSCP-specific option to prevent other applications from conlficting when accessing the URL.
The syntax of the session URL with all options enabled should look like the following.
Generate Session URL/Code.
WinSCP.exe: Editing Remote Files
Once you have a text file on a remote host, maybe you’d like to keep it there, but you need to edit it. Rather than manually downloading, editing, and uploading a file with WinSCP, you can do everything in one shot with the /edit parameter.
To edit a file, provide the site name ( Adamsite ), the /edit parameter, followed by the remote file path to edit.
Once you execute the above command, your default editor will pop up, allowing you to edit the file as necessary.
Editing Remote Files using Site
When complete, simply save the file and WinSCP will save the file on the remote host!
Where to go next?
In case you want to go further on learning about WinSCP and its multiple useful tool you can take a look at the following articles.
Кроме того, WinSCP предоставляет пользователю массу дополнительных возможностей:
- Возможность импорта настроек соединений из установленной в системе программы PuTTY. - Интеграция с Pageant (PuTTY Agent) с поддержкой авторизации по открытым ключам.
- Интеграция с операционной системой Windows (поддержка Drag&Drop, ярлыков, поддержка схем URL).
- Поддержка работы с любыми версиями протокола SSH (Secure Shell)
- Поддержка различных типов авторизации, как по паролю, так и с использованием ключей.
- Встроенный текстовый редактор.
- Возможность сохранять настройки соединений.
- Возможность работы с использованием файла конфигурации вместо хранения настроек в реестре, что позволяет использовать ее в переносимом варианте (Portable WinSCP).
- Плагин для поддержки протокола SFTP в программе FAR Manager .
- Возможность синхронизации каталогов локального и удаленного узлов.
Программа WinSCP абсолютно бесплатна и распространяется с открытым исходным кодом.
WinSCP.exe: Uploading Files without a Site
Now that you have learned how to download files on a local machine from a remote host let’s check now perform the opposite and upload files to a remote host.
Uploading files with winscp.exe without a site isn’t much different than downloading files. You must still provide your session URL. But this time, you must also use the /upload switch followed by the folder or file name, as shown below.
After you run the winscp.exe command above, WinSCP will bring up the graphical WinSCP upload dialog box, as shown below, indicating that all files defined with /upload ( *.* ) will upload to the remote host’s /tmp directory.
Uploading the Files without a Site
Logging into the remote host with an SSH client and running pwd to check the file and ls -lh to list all files in the directory, you’ll see the file was uploaded successfully.
File Uploaded successfully on remote machine
Generating Session Connection Code
Once you have created the session URL, WinSCP also provides code examples via the Script tab in the Generate session URL/code window. By selecting the type of code:
- Script file
- Batch file
- Command-line
- PowerShell script
WinSCP will create the syntax to connect to the remote host with WinSCP in any of these script types.
Generating Session Connection Code
NET assembly code tab
Winscp.exe is actually the same utility used to invoke the GUI, but you can also perform some command-line tasks with it too. But, you can perform some simple commands with it on the command line if you specify a few parameters.
Winscp.exe is only a command-line way to interact with various features of the WinSCP GUI.
Regardless of which tool you choose, you must open a command prompt (either cmd.exe or PowerShell) and navigate to the WinSCP installation directory.
Now that you’re in a command prompt, let’s get started!
Получение справки по конкретной команде WinSCP
Для получения дополнительной справочной информации по отдельным командам используется синтаксис:
help synchronize - получить подсказку по команде синхронизации. Результат выполнения:
Если первый параметр — 'local', синхронизирует локальный каталог с удалённым Если первый параметр — 'remote', синхронизирует удалённый каталог с локальным. Если первый параметр — 'both', взаимно синхронизирует каталоги. Если каталоги не указаны, синхронизируются текущие рабочие каталоги.
Примечание: подтверждения перезаписи для этой команды всегда отключены.
BR> параметры:
-preview - Только просмотр различий, не синхронизировать
-delete - Удалить устаревшие файлы
-mirror - Зеркалирование (синхронизирует старые файлы тоже). Игнорируется в режиме 'both'.
-criteria= - Критерии сравнения. Возможные значения: 'none', 'time', 'size' и 'either'. Игнорируется в режиме 'both'.
-permissions= - Установить права
-nopermissions - Сохранить права по умолчанию
-speed= - Ограничить скорость передачи
-transfer= - Режим передачи: binary, ascii, automatic
-filemask= - Задаёт файловую маску.
-resumesupport= - Настраивает поддержку возобновления. Возможные значения: 'on', 'off' или пороговая величина
действующие параметры: reconnecttime
synchronize remote -delete
synchronize both d:\www /home/martin/public_html
Recommended Resources!
Recommended Resources for Training, Information Security, Automation, and more!
Sites-Available vs Sites-Enabled
One common use case of Symlinks is on web servers, I’ve come across with Debian based distros (Ubuntu) running either Apache or Nginx as web servers and both using a particular scheme to activate websites using the Sites-Available and Sites-Enabled model.
NGINX Sites-Available and Sites-Enabled
Under that model you can have several websites but only a few of them being served, that is quite useful if you have a website under development or just a website acting as backup.
Как создать символические ссылки с mklink
Вы можете создавать символические ссылки, используя команду mklink в окне командной строки в качестве администратора. Чтобы открыть её, найдите ярлык «Командная строка» в меню «Пуск», щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора».
В Windows Creators Update вы можете использовать обычное окно командной строки, не запуская его как администратор. Однако, чтобы сделать это без окна командной строки администратора, вы должны сначала включить режим разработчика в Параметры → Обновление и безопасность → Разработчики.
Без каких-либо дополнительных опций mklink создает символическую ссылку на файл. Команда ниже создает символическую или «мягкую» ссылку (Link) на объект Target:
mklink Link Target
Используйте /D, если вы хотите создать символическую ссылку, указывающую на каталог:
mklink /D Link Target
Используйте /H, если вы хотите создать жесткую ссылку, указывающую на файл:
mklink /H Link Target
Используйте /J для создания жесткой ссылки, указывающую на каталог:
mklink /J Link Target
Так, например, если вы хотите создать жесткую ссылку в C:\LinkToFolder, которая указывала бы на C:\Users\Name\OriginalFolder, вы должны выполнить следующую команду:
mklink /J C:\LinkToFolder C:\Users\Name\OriginalFolder
Вам нужно будет помещать в кавычки пути с пробелами. Например, если папка называется C:\Link To Folder и C:\Users\Name\Original Folder, вы должны использовать следующую команду:
mklink /J "C:\Link To Folder" "C:\Users\Name\Original Folder"
WinSCP.exe: Downloading Files without a Site
Using winscp.exe on the command line, you can transfer files using a quick, ad-hoc connection, or you can call upon a pre-created WinSCP site. Let’s first download a file without using a site. To demonstrate, perhaps you’d like to download all files in the remote host 54.179.19.216’s /tmp directory using SFTP.
1. First, generate a session URL. The below example shows connecting to the remote host with a username of automate and a password of automate dropping into the /tmp remote directory.
2. Next, run winscp.exe to connect to the remote host to bring up the graphical WinSCP transfer settings dialog box. You’ll see that the local directory will be, by default ~\Documents, as shown below.
WinSCP will also default to the \\*.* pattern meaning to download all files with any name ( * ) with any file extension ( * ).
3. Click OK to begin the transfer. WinSCP will attempt to download all files in the remote /tmp directory over SFTP to the local directory chosen in the popup box.
Downloading the Files without a Site
Prerequsites
- A Windows XP+ PC – This tutorial will use Windows 10 Enterprise.
- A remote Linux host – This tutorial will use an Ubuntu 18.04.5 LTS machine.
- A user account on the remote SSH host with sudo permissions.
Get Paid to Write!
ATA Learning is always seeking instructors of all experience levels. Regardless if you’re a junior admin or system architect, you have something to share. Why not write on a platform with an existing audience and share your knowledge with the world?
Что такое символические ссылки
Символические ссылки – это, по сути, расширенные ярлыки. Создайте символическую ссылку на отдельный файл или папку, и эта ссылка будет выглядеть так же, как файл или папка для Windows, хотя это только ссылка, указывающая на файл или папку.
Например, предположим, что у вас есть программа, которая использует файлы в папке C:\Program. А Вам хотелось бы сохранить этот каталог в D:\Refuse, но программа требует, чтобы её файлы были в C:\Program. Вы можете перенести исходный каталог из C:\Program в D:\Refuse, а затем создать символическую ссылку C:\Program, указав на D:\Refuse. Когда вы перезапустите программу, она попытается получить доступ к своему каталогу в C:\Program. Windows автоматически перенаправит её на D:\Refuse, и всё будет работать так, как если бы оно было в C:\Program.
Этот трюк можно использовать для всех целей, включая синхронизацию любой папки с такими программами, как Dropbox, Google Drive и OneDrive.
Существует два типа символических ссылок: жесткая и мягкая. Мягкие символические ссылки работают аналогично стандартным ярлыкам. Когда вы открываете мягкую ссылку на папку, вы будете перенаправлены в папку, где хранятся файлы. Однако, жесткая ссылка заставляет его выглядеть так, как будто файл или папка действительно существуют в местоположении символической ссылки, и ваши приложения не будут знать о подмене. В большинстве ситуаций жесткие символические ссылки более полезны.
Обратите внимание, что Windows фактически не использует термины «жесткая ссылка» и «мягкая ссылка». Вместо этого используются термины «жесткая ссылка» и «символическая ссылка». В документации Windows «символическая ссылка» – это то же самое, что «мягкая ссылка». Тем не менее, mklink-команда может создавать как жесткие ссылки, так и софт-ссылки (известные как «символические ссылки» в Windows).
Softlink vs Hardlink
The following image shows a graphical representation of both the softlink vs the hardlink.
Main differences between Softlink and Hardlink are listed in the following image.
Connecting to a Session with a New Key Pair (Host Key)
If you’d like to connect to a session via public-key authentication, you may do so by first finding the host key fingerprint for your site’s session. To do that, you’ll need to execute the ssh-keygen command in the WinSCP folder using the syntax below.
Checking the fingerprint
Once you have the fingerprint, run the open command to create a session using the hostkey parameter providing the fingerprint you just generated.
Always preface the fingerprint with ssh-rsa 2048 if using ssh-keygen as described above.
Running single commands on remote computers is fine when you’re performing some ad-hoc management task. But single commands won’t work if you’re trying to automate some process in a remote session. To do that, you need to look into the /script parameter.
1. To demonstrate the /script parameter, open your favorite text editor and create a text file called upload_file_script.txt on your desktop using your favorite editor.
2. Create a blank text file called a.txt in the /tmp directory of your remote computer.
3. Create the local directory C:\abc.
4. Paste the below contents into upload_file_script.txt and save it. You’ve now created a WinSCP script!
In summary, the below script downloads the a.txt file from the /tmp remote directory and uploads it back to /tmp as new_file.txt.
If, for example, you have a private key in PEM format generated by the AWS EC2 service but want to use the popular SSH utility, Putty, you’re stuck. But WinSCP can help by converting keys for you.
- Use the /keygen parameter followed by the key to convert (PEM in this case).
- Specify the -o parameter and provide the output file path of the new key type.
- Optionally, specify the -c parameter and provide a comment.
Установка и настройка WinSCP
Установка программы выполняется стандартным образом с рекомендуемыми параметрами или с возможностью выбора параметров. Выбираемые параметры можно изменить в любой момент времени после установки. Настройки WinSCP выполняются через меню Параметры - Настройки . Множество различных параметров настройки внешнего вида и поведения программы позволяют легко адаптировать ее под предпочтения конкретного пользователя.
Настройки по умолчанию, как правило, соответствуют предпочтениям обычного пользователя Windows, но при необходимости, можно например, изменить поведение программы при обрыве связи, отклонении сервером подключения по протоколу SFTP и т.п.
How to create a Symlink using WinSCP
The first thing you have to get when creating a Symlink in this case to enable a website under the Debian scheme is the path to the actual file, that is the link to the Virtual Host configuration file, in our example that file is called “website-example”.
Obtaining the path to the file is really an easy task using the WinSCP GUI, see image below.
WinSCP – getting the file path
If you want to speed up this step, then you can make use of the key combination Ctrl+Alt+C, once you have the path on the clipboard you can go to the folder “sites-enabled” to create the Symlink, just right click and select “New/Link“, see screenshot below.
WinSCP creating a new Symlink
Paste the file path and also the file name as follow.
WinSCP creating a new Symlink – file name and file path
That’s it your brand new Symlink has been successfully created.
Использование собственных сценариев WinSCP .
WinSCP позволяет пользователю получить уже готовые сценарии для выполнения большинства операций приема и передачи файлов. Например, при приеме файла от удаленного сервера в локальный каталог, после нажатия кнопки Получить можно открыть выпадающее меню Настройки передачи
Выбранный сценарий нужно сохранить в каком-нибудь файле в кодировке UTF-8 (UTF-16), например C:\Scripts\s1.txt и передать его на выполнение в виде параметра командной строки winscp:
Если каталог WinSCP не добавлен в пути поиска переменной PATH, по нужно указать полный путь к исполняемому файлу:
"C:\Program Files (x86)\WinSCP\winscp.com" /script=c:\Scripts\s1.txt /ini=nul
В процессе выполнения сценария, на экране отображается справочная информация:
При необходимости, можно включить протоколирование выполнения сценария в журнале, например, C:\Scripts\s1.log :
Для получения командного файла CMD Windows, необходимо выбрать Формат - Пакетный файл :
Содержимое командного файла копируется в буфер обмена и затем в командный файл, например, C:\Scripts\s1.bat . В полученный таким образом командный файл нужно внести некоторые изменения, указав действительные путь для файла журнала или отключить его ведение:
@echo off
"C:\Program Files (x86)\WinSCP\WinSCP.com" ^
/log="C:\Scripts\s1.log" /ini=nul ^
/command ^
"open ftp://anonymous@site.com/" ^
"cd /utility/Backplane Utility" ^
"lcd C:\Backplane_Utility" ^
"get backplane.zip" ^
"exit"
REM Ниже пример анализа кода возврата для оценки результата выполнения сценария set WINSCP_RESULT = %ERRORLEVEL%
if %WINSCP_RESULT% equ 0 (
echo Success
) else (
echo Error
)
exit /b %WINSCP_RESULT%
WinSCP возвращает ERRORLEVEL равный нулю, если сценарий выполнен успешно. Команда exit /b %WINSCP_RESULT% формирует ERRORLEVEL для данного командного файла, который может быть использован в других сценариях для анализа результатов его выполнения.
winscp.com /command "open ftp://anonymous@site.com/" "cd /Backplane_Utility" "lcd C:\Backplane_Utility" "get backplane.zip" "exit"
Полученный код для выполнения в среде PowerShell копируется в файл с расширением .ps1 , например - C:\Scripts\s1.ps1 и запускается на выполнение командой:
powershell -file C:\Scripts\s1.ps1
powershell -Command Set-ExecutionPolicy RemoteSigned
После выполнения данной команды, выполнение сценариев в среде PowerShell будет разрешено.
Полученный код сборки для PowerShell, может потребовать некоторой правки, в частности - указания полного пути для загрузки динамической библиотеки WinSCPnet.dll .
How to create a Symlink using the CLI
Those of you who prefer doing things purely and always on the terminal can use the following CLI when creating Symlinks.
Читайте также: