File: filesys.html

package info (click to toggle)
eggdrop 1.10.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 9,596 kB
  • sloc: ansic: 65,863; javascript: 8,908; sh: 5,337; tcl: 3,801; makefile: 1,771; python: 121
file content (397 lines) | stat: -rw-r--r-- 20,280 bytes parent folder | download
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
<!DOCTYPE html>

<html lang="en" data-content_root="../../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Filesys Module &#8212; Eggdrop 1.10.1rc2 documentation</title>
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=03e43079" />
    <link rel="stylesheet" type="text/css" href="../../_static/eggdrop.css?v=ab48a1b6" />
    <script src="../../_static/documentation_options.js?v=290de6c6"></script>
    <script src="../../_static/doctools.js?v=9bcbadda"></script>
    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="Ident Module" href="ident.html" />
    <link rel="prev" title="DNS Module" href="dns.html" /> 
  </head><body>
    <div class="header-wrapper" role="banner">
      <div class="header">
        <div class="headertitle"><a
          href="../../index.html">Eggdrop 1.10.1rc2 documentation</a></div>
        <div class="rel" role="navigation" aria-label="related navigation">
          <a href="dns.html" title="DNS Module"
             accesskey="P">previous</a> |
          <a href="ident.html" title="Ident Module"
             accesskey="N">next</a>
        </div>
       </div>
    </div>

    <div class="content-wrapper">
      <div class="content">
        <div class="sidebar">
          
          <h3>Table of Contents</h3>
          <p class="caption" role="heading"><span class="caption-text">Installing Eggdrop</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../install/readme.html">README</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../install/install.html">Installing Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../install/upgrading.html">Upgrading Eggdrop</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Using Eggdrop</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../using/features.html">Eggdrop Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/core.html">Eggdrop Core Settings</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/partyline.html">The Party Line</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/autoscripts.html">Eggdrop Autoscripts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/users.html">Users and Flags</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/bans.html">Bans, Invites, and Exempts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/botnet.html">Botnet Sharing and Linking</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/ipv6.html">IPv6 support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/tls.html">TLS support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/ircv3.html">IRCv3 support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/accounts.html">Account tracking in Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/pbkdf2info.html">Encryption/Hashing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/python.html">Using the Python Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/twitchinfo.html">Twitch</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/tricks.html">Advanced Tips</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/text-sub.html">Textfile Substitutions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/tcl-commands.html">Eggdrop Tcl Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/twitch-tcl-commands.html">Eggdrop Twitch Tcl Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../using/patch.html">Patching Eggdrop</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Tutorials</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/setup.html">Setting Up Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/firststeps.html">Common First Steps</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/tlssetup.html">Enabling TLS Security on Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/userfilesharing.html">Sharing Userfiles</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/firstscript.html">Writing an Eggdrop Tcl Script</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/module.html">Writing a Basic Eggdrop Module</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Eggdrop Modules</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../index.html">Eggdrop Module Information</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../included.html">Modules included with Eggdrop</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="assoc.html">Assoc Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="blowfish.html">Blowfish Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="channels.html">Channels Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="compress.html">Compress Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="console.html">Console Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="ctcp.html">CTCP Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="dns.html">DNS Module</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Filesys Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="ident.html">Ident Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="irc.html">IRC Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="notes.html">Notes Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pbkdf2.html">PBKDF2 Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="python.html">Python Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="seen.html">Seen Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="server.html">Server Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="share.html">Share Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="transfer.html">Transfer Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="twitch.html">Twitch Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="woobie.html">Woobie Module</a></li>
<li class="toctree-l2"><a class="reference internal" href="uptime.html">Uptime Module</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../writing.html">How to Write an Eggdrop Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="../internals.html">Eggdrop Bind Internals</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">About Eggdrop</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../about/about.html">About Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../about/legal.html">Boring legal stuff</a></li>
</ul>

          <div role="search">
            <h3 style="margin-top: 1.5em;">Search</h3>
            <form class="search" action="../../search.html" method="get">
                <input type="text" name="q" />
                <input type="submit" value="Go" />
            </form>
          </div>

        </div>
        <div class="document">
            
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <p>Last revised: Dec 30, 2017</p>
<section id="filesys-module">
<span id="filesys"></span><h1>Filesys Module<a class="headerlink" href="#filesys-module" title="Link to this heading">¶</a></h1>
<p>This module provides an area within the bot where users can store and manage
files. With this module, the bot is usable as a file server.</p>
<p>This module requires: transfer</p>
<section id="config-file-setup">
<h2>Config file setup<a class="headerlink" href="#config-file-setup" title="Link to this heading">¶</a></h2>
<p>Put this line into your Eggdrop configuration file to load the filesys
module:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">loadmodule</span> <span class="n">filesys</span>
</pre></div>
</div>
<p>There are also some variables you can set in your config file:</p>
<blockquote>
<div><dl class="simple">
<dt>set files-path “/home/mydir/eggdrop/filesys”</dt><dd><p>Set here the ‘root’ directory for the file system.</p>
</dd>
<dt>set incoming-path “/home/mydir/eggdrop/filesys/incoming”</dt><dd><p>If you want to allow uploads, set this to the directory uploads should be
put into. Set this to “” if you don’t want people to upload files to your
bot.</p>
</dd>
<dt>set upload-to-pwd 0</dt><dd><p>If you don’t want to have a central incoming directory, but instead
want uploads to go to the current directory that a user is in, set this
setting to 1.</p>
</dd>
<dt>set filedb-path “”</dt><dd><p>Eggdrop creates a ‘.filedb’ file in each subdirectory of your file area
to keep track of its own file system information. If you can’t do that
(for example, if the dcc path isn’t owned by you, or you just don’t want
it to do that) specify a path here where you’d like all of the database
files to be stored instead.</p>
</dd>
<dt>set max-file-users 20</dt><dd><p>Set here the maximum number of people that can be in the file area at
once. Setting this to 0 makes it effectively infinite.</p>
</dd>
<dt>set max-filesize 1024</dt><dd><p>Set here the maximum allowable file size that will be received (in KB).
Setting this to 0 makes it effectively infinite.</p>
</dd>
</dl>
</div></blockquote>
</section>
<section id="partyline-usage">
<h2>Partyline usage<a class="headerlink" href="#partyline-usage" title="Link to this heading">¶</a></h2>
<section id="files">
<h3>.files<a class="headerlink" href="#files" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Moves you into the file transfer sub-system, if it has been enabled on this
bot. From there you can browse through the files online and use dcc file
transfers to download and upload.</p>
</div></blockquote>
</section>
<section id="cancel-file-file">
<h3>.cancel &lt;file&gt; [file] …<a class="headerlink" href="#cancel-file-file" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Tells the bot to stop sending a file that is pending (either
queued, waiting, or in the process of being transferred).</p>
</div></blockquote>
</section>
<section id="cd-directory">
<h3>.cd &lt;directory&gt;<a class="headerlink" href="#cd-directory" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Changes your current directory if possible.  this works exactly
like the unix command.</p>
</div></blockquote>
</section>
<section id="cp-source-dst">
<h3>.cp &lt;source&gt; &lt;dst&gt;<a class="headerlink" href="#cp-source-dst" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Copies a file or group of files from one place to another.</p>
</div></blockquote>
</section>
<section id="desc-file-description">
<h3>.desc &lt;file&gt; &lt;description&gt;<a class="headerlink" href="#desc-file-description" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Changes the description for a file.  if you are a master or
file janitor, you can change the description for any file.
otherwise you can only change the descriptions for files you
have uploaded.</p>
<p>The description is restricted to 3 lines of 60 characters
each, and is broken up between words.  you can force a line
break by putting a ‘|’ in the comment.</p>
</div></blockquote>
</section>
<section id="filestats-user-clear">
<h3>.filestats &lt;user&gt; [clear]<a class="headerlink" href="#filestats-user-clear" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Reports on the users upload &amp; download statistics. Optional argument
‘clear’ clears a users upload and download statistics.</p>
</div></blockquote>
</section>
<section id="stats">
<h3>.stats<a class="headerlink" href="#stats" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Clears a users upload &amp; download statistics.</p>
</div></blockquote>
</section>
<section id="get-filename-nickname">
<h3>.get &lt;filename&gt; [nickname]<a class="headerlink" href="#get-filename-nickname" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Sends you the file(s) requested, over IRC.  you should get a
DCC SEND notice on IRC, and have your client accept it.  if
your nickname on IRC is different than the one you use on the
bot, you should specify a nickname too.  you can also use that
to send files to other people.  if a file you want is actually
on another bot, it may take a little bit longer so be patient.
if that bot isn’t on the botnet right now, it will say the file
isn’t available.</p>
<p>There is a limit to the number of transfers you can have going
simultaneously, so if you go over this limit, the remainder of
your file requests will be queued. As the first files finish
transferring, the queued files will be sent.</p>
</div></blockquote>
</section>
<section id="hide-file-files">
<h3>.hide &lt;file&gt; [files] …<a class="headerlink" href="#hide-file-files" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Marks a file as hidden, so that normal users can’t see it.
Only a master or file janitor using %b’lsa’%b can see hidden files.</p>
</div></blockquote>
</section>
<section id="ln-bot-filepath-localfile">
<h3>.ln &lt;bot:filepath&gt; &lt;localfile&gt;<a class="headerlink" href="#ln-bot-filepath-localfile" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Creates a link to a file on another bot. The filepath has to
be complete, like ‘/gifs/uglyman.gif’.  If the bot is not
connected to the botnet, nobody will be able to download the
file until that bot connects again. The local filename can be
anything you want.</p>
<p>Example:  ln Snowbot:/gifs/uglyman.gif ugly.gif</p>
</div></blockquote>
</section>
<section id="ls-filemask">
<h3>.ls [filemask]<a class="headerlink" href="#ls-filemask" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Displays the files in the current directory. Subdirectories
are shown with “&lt;DIR&gt;” next to them, and other files will display
their size (typically in kilobytes), who uploaded them (and when),
and how many times each file has been downloaded. If a description
of the file exists, it is displayed below the filename. You can
restrict the file listing by specifying a mask, just like in unix.</p>
</div></blockquote>
</section>
<section id="mkdir-dir-flags-channel">
<h3>.mkdir &lt;dir&gt; [flags [channel]]<a class="headerlink" href="#mkdir-dir-flags-channel" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Creates a subdirectory from this one, with the given name.  If
flags are specified, then those flags are required to enter or
even see the directory.  You can even specify a channel that the
flags are matched against. You can use the %b’mkdir’%b command again
to alter or remove those flags.</p>
</div></blockquote>
</section>
<section id="mv-source-dest">
<h3>.mv &lt;source&gt; &lt;dest&gt;<a class="headerlink" href="#mv-source-dest" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Moves a file or group of files from one place to another (it
can also be used to rename files).</p>
</div></blockquote>
</section>
<section id="pending">
<h3>.pending<a class="headerlink" href="#pending" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Gives you a listing of every file you’ve requested which is
still waiting, queued, or in the process of transferring.
It shows you the nickname on IRC that the file is being sent
to, and, if the transfer is in progress, tells you how far
along the transfer is.</p>
</div></blockquote>
</section>
<section id="pwd">
<h3>.pwd<a class="headerlink" href="#pwd" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Tells you what your current directory is.</p>
</div></blockquote>
</section>
<section id="quit">
<h3>.quit<a class="headerlink" href="#quit" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Exits the file system.</p>
</div></blockquote>
</section>
<section id="rm-file-files">
<h3>rm &lt;file&gt; [files] …<a class="headerlink" href="#rm-file-files" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Erase a file for good.</p>
</div></blockquote>
</section>
<section id="rmdir-dir">
<h3>.rmdir &lt;dir&gt;<a class="headerlink" href="#rmdir-dir" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Removes an existing directory, if there are no files in it.</p>
</div></blockquote>
</section>
<section id="share-file-files">
<h3>.share &lt;file&gt; [files] …<a class="headerlink" href="#share-file-files" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Marks a file as shared. This means that other bots can get
the file remotely for users on their file systems. By default,
files are marked as unshared.</p>
</div></blockquote>
</section>
<section id="optimize">
<h3>.optimize<a class="headerlink" href="#optimize" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Cleans up the current directory’s database. If you have a large
directory with many files you may want to use this command if
you experience slow-downs/delays over time. Normally, the db
should clean up itself though.</p>
</div></blockquote>
</section>
<section id="unhide">
<h3>.unhide<a class="headerlink" href="#unhide" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Makes a file be not hidden any more.</p>
</div></blockquote>
</section>
<section id="unshare-file-file">
<h3>.unshare &lt;file&gt; [file] …<a class="headerlink" href="#unshare-file-file" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>Removes the shared tag from a file.</p>
</div></blockquote>
</section>
<section id="id1">
<h3>.filesys module<a class="headerlink" href="#id1" title="Link to this heading">¶</a></h3>
<blockquote>
<div><p>This module provides an area within the bot where users can store and
manage files. With this module, the bot is usable as a file server.</p>
<p>The following commands are provided by the filesys module:</p>
<dl class="simple">
<dt>For filesystem users:</dt><dd><p>files</p>
</dd>
</dl>
</div></blockquote>
<p>Copyright (C) 2000 - 2025 Eggheads Development Team</p>
</section>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
        </div>
        <div class="clearer"></div>
      </div>
    </div>

    <div class="footer-wrapper">
      <div class="footer">
        <div class="left">
          <div role="navigation" aria-label="related navigaton">
            <a href="dns.html" title="DNS Module"
              >previous</a> |
            <a href="ident.html" title="Ident Module"
              >next</a>
          </div>
          <div role="note" aria-label="source link">
          </div>
        </div>

        <div class="right">
          
    <div class="footer" role="contentinfo">
    &#169; Copyright 2025, Eggheads.
      Last updated on Aug 15, 2025.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
    </div>
        </div>
        <div class="clearer"></div>
      </div>
    </div>

  </body>
</html>