Question: My mkdir command /create_directory command always deletes all the files and doesnt really create the directory for some reason but my create_file function does. How

My mkdir command /create_directory command always deletes all the files and doesnt really create the directory for some reason but my create_file function does. How can I fix this?

screenshot of code:

My mkdir command /create_directory command always deletes all the files and doesnt

code transcript

import sys

import json

import requests

import base64

# Firebase URL

firebase_url = "url"

# Function to get the data from Firebase

def get_firebase_data(url):

response = requests.get(url)

data = json.loads(response.text)

return data

# Function to list all files and directories under a given directory

def list_directory(dir_path):

data = get_firebase_data(firebase_url + dir_path + ".json")

if isinstance(data, dict):

for key in data.keys():

if key == "content":

print(dir_path + ": " + data[key])

else:

list_directory(dir_path + "/" + key)

# Function to create a new file with the given content

def create_file(file_path, content):

data = {"content": content}

response = requests.put(firebase_url + file_path + ".json", data=json.dumps(data))

if response.status_code == 200:

print("File created successfully")

elif response.status_code == 400:

print("File already exists")

# Function to create a new directory

def create_directory(dir_path):

data = {}

response = requests.put(firebase_url + dir_path + ".json", data=json.dumps(data))

if response.status_code == 200:

print("Directory created successfully")

elif response.status_code == 400:

print("Directory already exists")

# Function to remove a file or directory

def remove(path):

response = requests.delete(firebase_url + path + ".json")

if response.status_code == 200:

print("File/directory removed successfully")

elif response.status_code == 404:

print("File/directory not found")

# Function to export the file system structure in XML format

def export_xml():

root_data = get_firebase_data(firebase_url + ".json")

print("")

for key in root_data.keys():

print("")

export_directory(key)

print("" + key + ">")

print("")

# Function to export a directory and its contents in XML format

def export_directory(dir_path):

data = get_firebase_data(firebase_url + dir_path + ".json")

if isinstance(data, dict):

for key in data.keys():

if key == "content":

content = data[key]

print("" + base64.b64encode(content.encode('utf-8')).decode('utf-8') + "")

else:

print("")

export_directory(dir_path + "/" + key)

print("")

# Parse the command-line arguments

args = sys.argv

if len(args)

print("Usage: python3 edfs.py [content]")

exit()

command = args[1]

x= args[2].split('/')

content = x[-1]

del x[-1]

path='/'.join(x)

print(path)

# Use the extracted path and file name as needed

if command == "-create":

if len(args)

print("Usage: python3 edfs.py -create ")

exit()

create_file(path, content)

elif command == "-mkdir":

create_directory(path)

elif command == "-rmdir" or command == "-rm":

remove(path)

elif command == "-ls":

list_directory(path)

elif command == "-export":

export_xml()

else:

print("Invalid command: " + command)

print("Usage: python3 edfs.py [content]")

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!