A bot discord that can create directories, file, rename, move, navigate throw directories etc....

Overview

File Manager Discord

What is the purpose of this program ?

This program is made for a Discord bot. Its purpose is to organize the messages sent in a clear and structured way, thanks to files and directories. The whole database is made in XML. However, people do not interact directly with this database, but write commands on a channel, which are processed by the bot to interact with the XML file. The commands are simple and inspired by bash.

The commands

ls

As in bash, this command allows to see the files that are in the directory.

Syntax: ls

cd

As in bash, this command allows you to change of directory

Syntax: cd

cd..

cd.. is the equivalent of "cd .." in Bash

Syntax: cd..

mkdir

As in bash, this command allows you to make a new directory

Syntax: mkdir {name_of_the_dir}

mkdir

As in bash, this command allows you to make a new directory

Syntax: mkdir {name_of_the_dir}

home

This command allow user to come to the root of all the database. It's kind of a big cd..

Syntax: home

pwd

As in bash, this command allows you to get your current location. You can also see it with ls at the bottom

Syntax: pwd

touch

This command isn't the same as in Bash. This command creates a "file" (which is just a tag for the XML), and maps the ID of a discord message to it. If you don't understand the utility of that, you'll understand it with the next command c

Syntax: touch {name_of_the_file} {id_of_the_message}

c

The command c (see) allows user to see the "content" of a file. Because we created a file with the ID of a message in it, this command, will show the message that correspond to the ID

Syntax: c {name_of_the_file}

mdid

It is possible that the ID you entered is wrong. To change this id you can use the command mdid

Syntax: mdid {name_of_the_file} {new_id_of_the_message}

rm

You want to delete a file or a directory? No problem, the rm command allows you to do that

Syntax: mdid {type (dir or file)} {name}

rn

If you are mistaken about the name of a file and want to rename it you can use the command rn

Syntax: rn {type (dir or file)} {actual_name} > {new_name}

mv

You want to move a file or even a directory to another location? Use mv

Syntax: mv {type (dir or file)} {name_of_the_file_or_dir_you_want_to_mv} > {dir}

mv..

This command is the same as cd.. for cd but for mv. If you want to move a file or a directory to the directory before the one you are in, use mv.

Syntax: mv.. {type (dir or file)} {name_of_the_file_or_dir_you_want_to_mv}

help

This is the final command. This command can be used if you don't know what to do or if you don't know the use of a command and can be used in two ways

Just help

If you only write "help". You'll see the list of commands. (I added a (- ADMIN) for this example, but didnt implemented it)

Syntax: help

help + cmd

However, if you want to have more information about a command, you can write help + the command

Syntax : help {cmd}

Extensions I used

ETREE

The xml.etree.ElementTree module implements a simple and efficient API for parsing and creating XML data. This is normally already installed with Python. More information here: https://docs.python.org/3/library/xml.etree.elementtree.html

Discord

Since the bot is on Discord, we logically use Discord.py if you want to install it:

https://pypi.org/project/discord.py/

Documentation:

https://discordpy.readthedocs.io/en/latest/

Owner
Main: Python3 Also: HTML/CSS/JS C# C++
A python script to convert an ucompressed Gnucash XML file to a text file for Ledger and hledger.

README 1 gnucash2ledger gnucash2ledger is a Python script based on the Github Gist by nonducor (nonducor/gcash2ledger.py). This Python script will tak

Thomas Freeman 0 Jan 28, 2022
Nmap XML output to CSV and HTTP/HTTPS URLS.

xml-to-csv-url Convert NMAP's XML output to CSV file and print URL addresses for HTTP/HTTPS ports. NOTE: OS Version Parsing is not working properly ye

1 Dec 21, 2021
Pti-file-format - Reverse engineering the Polyend Tracker instrument file format

pti-file-format Reverse engineering the Polyend Tracker instrument file format.

Jaap Roes 14 Dec 30, 2022
Add Ranges and page numbers to IIIF Manifest from a CSV.

Add Ranges and page numbers to IIIF Manifest from CSV specific to a workflow of the Bibliotheca Hertziana.

Raffaele Viglianti 3 Apr 28, 2022
Vericopy - This Python script provides various usage modes for secure local file copying and hashing.

Vericopy This Python script provides various usage modes for secure local file copying and hashing. Hash data is captured and logged for paths before

15 Nov 05, 2022
Python code snippets for extracting PDB codes from .fasta files

Python_snippets_for_bioinformatics Python code snippets for extracting PDB codes from .fasta files If you have a single .fasta file for all protein se

Sofi-Mukhtar 3 Feb 09, 2022
shred - A cross-platform library for securely deleting files beyond recovery.

shred Help the project financially: Donate: https://smartlegion.github.io/donate/ Yandex Money: https://yoomoney.ru/to/4100115206129186 PayPal: https:

4 Sep 04, 2021
QSynthesis is a Python3 API to perform I/O based program synthesis of bitvector expressions.

QSynthesis is a Python3 API to perform I/O based program synthesis of bitvector expressions. It aims at facilitating code deobfuscation. The algorithm is greybox approach combining both a blackbox I/

Quarkslab 103 Dec 30, 2022
FileGenerator - File Generator for sites that accepts documents

File Generator for sites that accepts documents This code generates files as per

Shaunak 2 Mar 19, 2022
Listreqs is a simple requirements.txt generator. It's an alternative to pipreqs

⚡ Listreqs Listreqs is a simple requirements.txt generator. It's an alternative to pipreqs. Where in Pipreqs, it helps you to Generate requirements.tx

Soumyadip Sarkar 4 Oct 15, 2021
Python file organizer application

Python file organizer application

Pak Maneth 1 Jun 21, 2022
Convert All TXT Files To One File.

AllToOne Convert All TXT Files To One File. Hi 👋 , I'm Alireza A Python Developer Boy 🔭 I’m currently working on my C# projects 🌱 I’m currently Lea

4 Jun 07, 2022
Simple, convenient and cross-platform file date changing library. 📝📅

Simple, convenient and cross-platform file date changing library.

kubinka0505 15 Dec 18, 2022
Uncompress DEFLATE streams in pure Python

stream-inflate Uncompress DEFLATE streams in pure Python. Installation pip install stream-inflate Usage from stream_inflate import stream_inflate impo

Michal Charemza 7 Oct 13, 2022
File support for asyncio

aiofiles: file support for asyncio aiofiles is an Apache2 licensed library, written in Python, for handling local disk files in asyncio applications.

Tin Tvrtković 2.1k Jan 01, 2023
Extract an archive file (zip file or tar file) stored on AWS S3

S3 Extract Extract an archive file (zip file or tar file) stored on AWS S3. Details Downloads archive from S3 into memory, then extract and re-upload

Evan 1 Dec 14, 2021
Generates a clean .txt file of contents of a 3 lined csv file

Generates a clean .txt file of contents of a 3 lined csv file. File contents is the .gml file of some function which stores the contents of the csv as a map.

Alex Eckardt 1 Jan 09, 2022
A Python library that provides basic functions to read / write Aseprite format files

A Python library that provides basic functions to read / write Aseprite format files

Joe Trewin 1 Jan 13, 2022
MetaMove is written in Python3 and aims at easing batch renaming operations based on file meta data.

MetaMove MetaMove is written in Python3 and aims at easing batch renaming operations based on file meta data. MetaMove abuses eval combined with f-str

Jan Philippi 2 Dec 28, 2021
This program can help you to move and rename many files at once

This program can help you to rename and save many files in a folder in seconds, but don't give the same name to files, it can delete both files.

João Assalim 1 Oct 10, 2022