Files
bitburner-src/markdown/bitburner.ns.scp.md

117 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) &gt; [bitburner](./bitburner.md) &gt; [NS](./bitburner.ns.md) &gt; [scp](./bitburner.ns.scp.md)
## NS.scp() method
Copy file between servers.
**Signature:**
```typescript
scp(files: string | string[], destination: string, source?: string): boolean;
```
## Parameters
<table><thead><tr><th>
Parameter
</th><th>
Type
</th><th>
Description
</th></tr></thead>
<tbody><tr><td>
files
</td><td>
string \| string\[\]
</td><td>
Filename or an array of filenames of script/literature files to copy. Note that if a file is located in a subdirectory, the filename must include the leading `/`<!-- -->.
</td></tr>
<tr><td>
destination
</td><td>
string
</td><td>
Hostname/IP of the destination server, which is the server to which the file will be copied.
</td></tr>
<tr><td>
source
</td><td>
string
</td><td>
_(Optional)_ Hostname/IP of the source server, which is the server from which the file will be copied. This argument is optional and if its omitted the source will be the current server.
</td></tr>
</tbody></table>
**Returns:**
boolean
True if the file is successfully copied over and false otherwise. If the files argument is an array then this function will return false if any of the operations failed.
## Remarks
RAM cost: 0.6 GB
Copies a script or literature (.lit) file(s) to another server. The files argument can be either a string specifying a single file to copy, or an array of strings specifying multiple files to copy.
## Example 1
```js
//Copies foo.lit from the helios server to the home computer:
ns.scp("foo.lit", "home", "helios" );
//Tries to copy three files from rothman-uni to home computer:
const files = ["foo1.lit", "foo2.txt", "foo3.js"];
ns.scp(files, "home", "rothman-uni");
```
## Example 2
```js
const server = ns.args[0];
const files = ["hack.js", "weaken.js", "grow.js"];
ns.scp(files, server, "home");
```
For darknet servers: The destination requires a session, but unlike [exec](./bitburner.ns.exec.md)<!-- -->, does not require a direct connection — scp works at any distance. The source server has no darknet requirements (no session or connection needed). Use [dnet.authenticate](./bitburner.darknet.authenticate.md) (requires direct connection) or [dnet.connectToSession](./bitburner.darknet.connecttosession.md) (at any distance) to establish a session.