/ConsoleFileManager

Simple 2-panel file manager

Primary LanguageC#GNU General Public License v3.0GPL-3.0

ConsoleFileManager

Release candidate, March 22, 2021.

C#, Console Application, .Net Core 3.1, Any CPU

Developer: Fakhrudinov Alexander, asbuka@gmail.com

Description

An entry-level console file manager with two panels and a command line in the Windows environment.
Program view

Supported copying, deleting, moving through the directory structure, renaming, running files, creating new directories.

The work with the resizing of the console by the user has been implemented - to change it, you just need to stretch the window to the desired size.

Changes to the dimensions opened in the directory panels are saved and will be applied the next time the program is started.

The history of the commands entered by the user is saved, including the commands made in the file manager from the "F" buttons, such as F5, F6, etc.

Main areas of the program

Panel.

Panel

Above - an information panel about the current directory and disk.
Below is the line with directories and files in the current directory. The highlighted line shows the currently selected object.
Bottom line - information about pagination on the panel and the total number of directories and files.

F buttons information

F bar

The available 'F' keys are shown here with a brief description of the action to be performed.

Command panel

Command bar

On the command panel there are 2 lines - at the bottom, the user enters the command and its arguments. The top line shows a hint for the entered command and an estimate of the entered path.

User manual

Panel operations

Basic navigation. To navigate within the panel, use the up and down arrows, pgUp, pgDown, Home, End buttons.
Press Enter to start and open the file, as well as to enter the directory and move to the parent directory "..".
Tab to change the active panel.
To change the disk, press enter on ".." while in the root directory of the disk.

F1 Help

Will show a panel with a list of available commands. Press Enter to close the information window.

F3 Info

Shows information about the selected object. Press Enter to close the information window.

F5 Copy

Copies selected object to an inactive panel. A confirmation dialog will be shown, where 'Y' or 'y' is confirmation, any other input will cancel the action.

F6 Move

Moves selected object to an inactive panel. A confirmation dialog will be shown, where 'Y' or 'y' is confirmation, any other input will cancel the action.

F7 NewDir

Create a new directory in the current directory. New name request will be displayed. Enter a name to create or leave blank to cancel the action.

F8 Del

Delete selected object in active panel. A confirmation dialog will be shown, where 'Y' or 'y' is confirmation, any other input will cancel the action.

F9 Rename

Rename selected object in active panel. New name request will be displayed. Enter a name to create or leave blank to cancel the action.

Alt + F4 Exit.

Close this program.

Command line operations

Ctrl + Enter

Paste the selected in active panel object into the command line

Ctrl + E

Show a list of the last used commands. Use the up and down arrows to navigate through the list. Press Enter to select

equal

Changes the working directory of the inactive panel to the working directory of the active panel. All panels show the same directory.

cd argument

Change directory. The full path, the name of the directory in the active panel, or a relative path are accepted as an argument.
Examples:

  • cd d: (change drive)
  • cd .. (go to the to parent directory)
  • cd folderName (go to the folder 'folderName', located in the current directory of the active panel)
  • cd c:\temp\333\ (go to the absolute path)

cp argument

Copy, one argument. The object will be copied to the directory on the inactive panel. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an argument.
Examples:

  • cp folderName (copy the folderName located in the current directory of the active panel to the directory on the inactive panel)

cp argument1, argument2

Copy, two arguments. Arguments delimiter is ', '. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an arguments
Examples:

  • cp folderName, NewFolderName (copy the folderName located in the current directory of the active panel to the directory with new name on the inactive panel)
  • cp c:\temp\111\folderName, c:\222\333\folderName (copy from absolute path to the absolute path)

mv argument

Move, one argument. The object will be movied to the directory on the inactive panel. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an argument.
Examples:

  • mv folderName (move the folderName located in the current directory of the active panel to the directory on the inactive panel)

mv argument1, argument2

Move, two arguments. Arguments delimiter is ', '. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an arguments
Examples:

  • mv folderName, NewFolderName (move the folderName located in the current directory of the active panel to the directory with new name on the inactive panel)
  • mv c:\temp\111\folderName, c:\222\333\folderName (move from absolute path to the absolute path)

rm argument

Remove object. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an argument.
Examples:

  • rm folderName (Remove folder 'folderName', located in the current directory of the active panel)
  • rm c:\temp\333 (Remove folder '333' by absolute path)

mkdir argument

Make new directory. The full path, the name of the new directory creatted in the active panel, or a relative path are accepted as an argument.
Examples:

  • mkdir ..\111 (create new directory '111' in the parent directory relatively current directory of the active panel)
  • mkdir folderName (create new directory 'folderName' in the current directory of the active panel)
  • mkdir c:\temp\333\111 (create new directory '111' by the absolute path)

run argument

Try to execute in the default program. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an argument.
Examples:

  • run 111 (open folder '111' located in the current directory of the active panel in default file manager)
  • run rtfm.txt (if exist, open file 'rtfm.txt' in the current directory of the active panel with default text editor program)
  • run c:\temp\333\111\rtfm.txt (if exist, open file 'rtfm.txt' by the absolute path with default text editor program)

name argument, argument2

Rename the object. The first argument must exist. The second argument is the new name of the object. The full path, the name of the directory or file in the active panel, or a relative path are accepted as an first argument.
Examples:

  • name folderName, NewFolderName (Rename the folderName located in the current directory of the active panel with new name on the active panel)
  • name c:\temp\111\folderName, c:\222\333\folderName (move from absolute path to the absolute path)