mirror of
https://github.com/TheUltimateHacker/shiftos-next.git
synced 2025-01-22 09:02:00 -05:00
Added directory-surfing to Terminal.
Added cd, ls/dir, and mkdir commands to the Terminal.
This commit is contained in:
parent
26e89066d4
commit
ac564b6e77
10 changed files with 94 additions and 11 deletions
|
@ -1,11 +1,12 @@
|
|||
Public Class Terminal
|
||||
|
||||
Public currentdir As String = root
|
||||
Dim trackpos As Integer = 0
|
||||
|
||||
Public Sub terminal_Innitiate(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
|
||||
Me.WindowState = FormWindowState.Maximized
|
||||
AddLine("user@shiftos ~$> ")
|
||||
AddLine("user@shiftos " & currentdir.ToLower.Replace("c:\shiftos", "~") & "$> ")
|
||||
SelectBottom()
|
||||
End Sub
|
||||
|
||||
|
@ -17,6 +18,43 @@
|
|||
command = command.ToLower
|
||||
If command Like "help" Then
|
||||
ShowHelp()
|
||||
ElseIf command Like "cd *" Then
|
||||
Dim folder As String = command.Replace("cd ", "")
|
||||
|
||||
If folder = ".." Then
|
||||
If currentdir.ToLower = "c:\shiftos" Then
|
||||
AddLine("cd: Error! You are at the root of your drive.")
|
||||
Else
|
||||
currentdir = IO.Directory.GetParent(currentdir).ToString
|
||||
End If
|
||||
Else
|
||||
If IO.Directory.Exists(currentdir + "\" + folder) Then
|
||||
currentdir = currentdir & "\" & folder
|
||||
ElseIf IO.Directory.Exists(folder) Then
|
||||
currentdir = folder
|
||||
Else
|
||||
AddLine("cd: Directory """ & folder & """ doesn't exist.")
|
||||
End If
|
||||
End If
|
||||
ElseIf command = "dir" Or command = "ls" Then
|
||||
AddLine("Type | Name ")
|
||||
AddLine("-------+-------------------------------------------")
|
||||
For Each Dir As String In IO.Directory.GetDirectories(currentdir)
|
||||
Dim dirinf As New IO.DirectoryInfo(Dir)
|
||||
AddLine("[DIR] | " & dirinf.Name)
|
||||
Next
|
||||
For Each file As String In IO.Directory.GetFiles(currentdir)
|
||||
Dim filinf As New IO.FileInfo(file)
|
||||
AddLine(filinf.Extension & " | " & filinf.Name)
|
||||
Next
|
||||
ElseIf command Like "mkdir *" Then
|
||||
Dim foldertomake As String = command.Replace("mkdir ", "")
|
||||
If IO.Directory.Exists(currentdir + "\" + foldertomake) Then
|
||||
AddLine("Directory already exists!")
|
||||
Else
|
||||
IO.Directory.CreateDirectory(currentdir + "\" + foldertomake)
|
||||
AddLine("mkdir: Directory created successfully.")
|
||||
End If
|
||||
ElseIf command Like "shutdown" Then
|
||||
Me.Close()
|
||||
ElseIf command Like "" Then
|
||||
|
@ -35,6 +73,9 @@
|
|||
AddLine(" - Terminal commands are case-insensitive.")
|
||||
AddLine(" - The screen can only display Black and White." & vbNewLine)
|
||||
AddLine("Commands: " & vbNewLine)
|
||||
AddLine(" - cd: Change to the specified directory.")
|
||||
AddLine(" - mkdir: Create a directory inside the current directory (marked before the %)")
|
||||
AddLine(" - ls, dir: View the contents of the current directory.")
|
||||
AddLine(" - shutdown: Shuts the system down.")
|
||||
AddLine(" - help: Shows this screen.")
|
||||
|
||||
|
@ -109,15 +150,15 @@
|
|||
|
||||
If e.KeyCode = Keys.Enter Then
|
||||
e.SuppressKeyPress = True
|
||||
Dim command As String = txtterm.Lines(txtterm.Lines.Length - 1).Replace("user@shiftos ~$> ", "").ToLower
|
||||
Dim command As String = txtterm.Lines(txtterm.Lines.Length - 1).Replace("user@shiftos " & currentdir.ToLower.Replace("c:\shiftos", "~") & "$> ", "").ToLower
|
||||
Interpret(command)
|
||||
|
||||
If command = "clear" Then
|
||||
txtterm.Text = "user@shiftos ~$> "
|
||||
txtterm.Text = "user@shiftos " & currentdir.ToLower.Replace("c:\shiftos", "~") & "$> "
|
||||
txtterm.Select(txtterm.Text.Length, 0)
|
||||
|
||||
Else
|
||||
AddLine("user@shiftos ~$> ")
|
||||
AddLine("user@shiftos " & currentdir.ToLower.Replace("c:\shiftos", "~") & "$> ")
|
||||
txtterm.Select(txtterm.Text.Length, 0)
|
||||
End If
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
11
shiftos_next/bin/Debug/shiftos_next.vshost.exe.manifest
Normal file
11
shiftos_next/bin/Debug/shiftos_next.vshost.exe.manifest
Normal file
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
||||
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
|
||||
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
|
||||
<security>
|
||||
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
</assembly>
|
19
shiftos_next/filesystem.vb
Normal file
19
shiftos_next/filesystem.vb
Normal file
|
@ -0,0 +1,19 @@
|
|||
Module filesystem
|
||||
'This module represents the folder structure of the ShiftFS Filesystem.
|
||||
|
||||
Public root As String = "C:\ShiftOS"
|
||||
|
||||
Public home As String = root + "\Home\" 'Inconsistent to fix terminal glitch.
|
||||
|
||||
Public documents As String = home + "Documents\"
|
||||
Public pictures As String = home + "Pictures\"
|
||||
Public music As String = home + "Music\"
|
||||
|
||||
Public systemdir As String = root + "Shiftum42\"
|
||||
|
||||
Public drivers As String = systemdir + "Drivers\"
|
||||
|
||||
Public save As String = drivers + "HDD.dri"
|
||||
|
||||
|
||||
End Module
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -9,3 +9,14 @@ c:\users\the ultimate hacker\documents\github\ORION\project-orion\shiftos_next\s
|
|||
c:\users\the ultimate hacker\documents\github\ORION\project-orion\shiftos_next\shiftos_next\obj\Debug\shiftos_next.exe
|
||||
c:\users\the ultimate hacker\documents\github\ORION\project-orion\shiftos_next\shiftos_next\obj\Debug\shiftos_next.xml
|
||||
c:\users\the ultimate hacker\documents\github\ORION\project-orion\shiftos_next\shiftos_next\obj\Debug\shiftos_next.pdb
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\bin\Debug\shiftos_next.exe.config
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.exe
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.xml
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.pdb
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.HijackScreen.resources
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.Resources.resources
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.Terminal.resources
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\obj\Debug\shiftos_next.vbproj.GenerateResource.Cache
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\bin\Debug\shiftos_next.exe
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\bin\Debug\shiftos_next.pdb
|
||||
C:\Users\The Ultimate Hacker\Documents\shiftos-next\shiftos_next\bin\Debug\shiftos_next.xml
|
||||
|
|
|
@ -70,6 +70,7 @@
|
|||
<Import Include="System.Threading.Tasks" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="filesystem.vb" />
|
||||
<Compile Include="Hijack.Designer.vb">
|
||||
<DependentUpon>Hijack.vb</DependentUpon>
|
||||
</Compile>
|
||||
|
|
Loading…
Reference in a new issue