Question
How can I make it so my code works so my command line can look like python3 edfs.py -create /user/file instead of python3 edfs.py -create
How can I make it so my code works so my command line can look like "python3 edfs.py -create /user/file" instead of "python3 edfs.py -create /user file" as it only works with spaces between.
here is the code transcript (indents may not be accurate):
import sys
import json
import requests
import base64
# Firebase URL
firebase_url = "insert url here"
# 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("
else:
print("
export_directory(dir_path + "/" + key)
print("")
# Parse the command-line arguments
args = sys.argv
if len(args)
print("Usage: python3 edfs.py
exit()
command = args[1]
path = args[2]
if command == "-create":
if len(args)
print("Usage: python3 edfs.py -create
exit()
content = args[3]
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
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started