MoonShell là một phần mềm shell mini viết bằng C++ cho Windows, hỗ trợ thao tác file, thư mục, biên dịch/chạy chương trình C++/Java, và các tiện ích quản lý file cơ bản.
Phần mềm được thiết kế cho bài tập lớn môn Hệ điều hành.
-
Di chuyển thư mục:
down -dir <subdir>: Chuyển vào thư mục conup: Quay lại thư mục chareturn: Quay về thư mục gốc
-
Quản lý file:
create -csv <file>,-txt <file>,-json <file>: Tạo file rỗngview -csv <file>,-txt <file>,-json <file>: Xem nội dung filewrite -csv <file>,-txt <file>,-json <file>: Ghi đè nội dung file (tạm thời chưa hỗ trợ Unicode/Vietnamese)rename -targetname <old> -newname <new>: Đổi tên file/thư mụcdelete -targetname <file/dir>: Xóa file hoặc thư mục rỗng
-
Biên dịch và chạy chương trình:
build -c <src.c> -exe <out.exe>: Biên dịch file Cbuild -cpp <src.cpp> -exe <out.exe>: Biên dịch file C++build -java <java_package_path>: Biên dịch file Javarun -argS [args...]: Chạy file được hỗ trợ bởi máy (trong PATHEXT)runbatch -argS [args...]: Chạy file .bat (được hỗ trợ riêng)runjar -optionS <java-options> -argS <jarfile> [args...]: Chạy file.jarvới tham số,runclass -optionS <java-options> -argS <JavaClass> [args...]: Chạy class Java
-
Quản lý biến và đường dẫn:
setvar -name <var> -value <val>: Đặt biếngetvar -name <var>: Lấy giá trị biếnrmvar -name <var>: Xóa biếnviewvar: Xem tất cả biếnaddpath -path <dir>: Thêm đường dẫnrmpath -path <dir>: Xóa đường dẫnviewpath: Xem các đường dẫnadddir -dir <dir>: Thêm thư mụcrmdir -dir <dir>: Xóa thư mụcviewdir: Xem các thư mục
-
Tiện ích hệ thống:
sysinfo: Thông tin hệ thốngtimeinfo: Thông tin thời gianuserinfo: Thông tin người dùngipinfo: Thông tin IPping -host <host>: Ping hosttraceroute -host <host>: Traceroutenslookup -host <host>: Tra cứu DNSportcheck -port <port>: Kiểm tra cổng
-
Trợ giúp:
intro: Giới thiệu phần mềmhelp: Danh sách lệnh và cờexample: Ví dụ sử dụngexit: Thoát chương trình
-
Chạy chương trình: Bạn chỉ cần vào cmd, trỏ tới thư mục chính và chạy
main.exe -
Một số ví dụ lệnh:
forward -dir example_matmul build -cpp matrix_generator.cpp -exe matrix_generator.exe runexe -argS matrix_generator.exe 128 256 512 build -java MatrixMultiplication.java runclass -argS root.example_matmul.MatrixMultiplication matrix1.csv matrix2.csv matrix3.csv runjar -optionS --enable-preview -argS chessjava.jar -bg yes create -txt note.txt write -txt note.txt view -txt note.txt rename -targetname note.txt -newname note2.txt delete -targetname note2.txt setvar -name greeting -value "Xin chào" getvar -name greeting viewvar addpath -path C:\MyTools viewpath sysinfo ping -host google.com
- Unicode: Đầu ra console và file hỗ trợ tiếng Việt (UTF-8/UTF-16). Khi ghi file, nhập
###để kết thúc ghi. - Về thư mục và file: Đảm bảo classpath đúng, chỉ hỗ trợ chạy thư mục trong
root, sử dụng cờ-bgvà tham sốyesđể chạy tiến trình nền (background) - Xóa thư mục: Chỉ xóa được thư mục rỗng.
- Các lệnh và cờ phân biệt số ít/số nhiều:
- Cờ kết thúc bằng
Snhận nhiều tham số (ít nhất 1 trở lên) - Các cờ còn lại chỉ nhận 1 tham số.
- Cờ kết thúc bằng
- Ctrl+C: Khi nhấn Ctrl+C tại shell, tất cả tiến trình con sẽ bị kết thúc và shell sẽ thoát.
moonshineTP Bài tập lớn môn Hệ điều hành