web-bash is a simulated terminal interface implemented entirely in your browser. By using the browser, users are able to become accostomed to a command line without putting production systems at risk.
Why would you put your system in danger by letting the intern play with your servers? Buy web-bash and save yourself the trouble.
- Tyler Romeo
- Nicholas Bevacqua
- Krzysztof Jordan
Note: all paths are relative to the root folder of webbash
- Install a LAMP web stack. The following software is recommended:
- Apache (if not using Apache, make sure to properly configure your web server to match our .htaccess file)
- PHP 5.3+ with PDO
- MySQL
- Linux or Windows (Mac not yet supported)
- Create a database and user in your MySQL server for WebBash.
- Import the maintenance/tables.sql file into your database server.
- Open the config.ini.sample file and replace the sample database credentials with your own.
Stream redirection Examples: echo hello > test cat < test ls 2> testerr
Declares one or more new command shortcuts
expressions have the form X=(value)
EX: alias speak=echo
Outputs contents of one or more files to the stdout
(unless redirected to a different stream)
files --- file targets
Changes directories to the provided path
path --- the path to the file
Changes the group of the user
group --- new group to be assigned
user --- target user
Changes the permissions of the file
permissions --- 3 digit numerical value ranging from 000 to 777
file --- target file
Change file owner
user --- new owner of the file
file --- target file
Copies file1 into file2
( only works within the same directory for now )
file1 --- source file
file2 --- destination file
Prints a list of all available commands
Prints the current date to stdout
Prints onto the stdout, ( unless redirected )
replaces $name with environment variable value
args --- arguments to be output to the output stream
Declares one or more new environment variables
expressions --- have the form X=(value)
Represents a false value
Prints out help information to stdout
Creates a symbolic link to the target location
source file --- file to assign the new link to
target link --- link to be assigned
Shows all the files in current directory,
[OPTIONS]:
-l show long format
-a include all files starting with a .
Creates one or more directories
directories --- directory names
Moves file1 into file2
( only works within the same directory for now )
file1 --- source file
file2 --- destination file
Changes the password for the current user
Prints the current directory to stdout
Removes one or more files
( will perform a cascading delete in folders )
[OPTIONS]:
-r remove folders
Removes one or more empty directories
directories --- the directories to be deleted
Sleeps for a given amount of seconds
number --- how many seconds
Refreshes the modified times of the given files
files --- one or more file targets
Represents a true value.
Prints system information
options:
-a print all information
-s print the kernel name
-n print the network node hostname
-r print the release version
Unsets one or more environment variables
args --- environment variable names, separated by space
Adds a new user to the shell environment
username --- username for the new user
email --- optional, email to be associated with the user
Prints your username to stdout