Witam, chciałbym utworzyć dyskietkę, ewentualnie cd tak, aby komputer startował od razu z niej i wyświetlał utworzony przeze mnie plik tekstowy.
Liczę na Was
Pozdro
Witam, chciałbym utworzyć dyskietkę, ewentualnie cd tak, aby komputer startował od razu z niej i wyświetlał utworzony przeze mnie plik tekstowy.
Liczę na Was
Pozdro
czy
Pomyśl, pokaż co masz, i zapytaj o konkretną informację jakiej nie wiesz ;p
Na takiej dyskietce oprócz tego pliku tekstowego musiała by być choćby najbardziej okrojona wersja jakiegoś systemu operacyjnego np. DOSu.
Możecie doradzić jak zrobić, aby po kliknięciu dowolnego przycisku wykonywało się polecenie exit
– Dodane 27.10.2010 (Śr) 17:39 –
nie chodzi o pause, bo ono daje komunikat
Najprostsze zrobienie dyskietki startowej z DOSem:
Umieszczamy dyskietkę 3.5 cala w stacji dyskietek i klikamy prawym klawiszem myszki ns stacji dysków A: Wybieramy z listy formatuj i zaznaczamy opcję: Utwórz dysk startowy.
(Jeżeli chcemy utworzyć płytę CD jako dysk startowy, to robimy obraz dyskietki 3.5 cala np. w programie UltraISO i nagrywamy ten obraz na płytę CD.)
Umieść swój plik tekstowy np. o nazwie: info.txt na dyskietce z której uruchamiasz system.
Po ukazaniu się znaku zachęty wpisz :type info.txt
Jeżeli tekst ma otwierać się automatycznie, to musisz jeszcze utworzyć plik o nazwie: autoexec.bat
W pliku autoexec.bat umieść komendę: type info.txt
Prawdopodobnie Twój system nie będzie widział Twoich twardych dysków ponieważ są przypuszczalnie sformatowane w trybie NTFS czyli wszystkie pliki na których chcesz operować muszą być na dyskietce.
O jakie exit Ci chodzi. Wyjście z DOSa? No, to musisz ponownie uruchomić komputer.
Dobrze, utworzyłem dyskietkę, wyświetla mi tekst , który chcę.
autoexec.bat
@echo off
mode con codepage...
mode con codepage...
keyb pl,,
@echo Pierwszy wiersz tekstu
@echo Drugi wiersz tekstu
//niech nacisniecie przycisku daje exit
I wyświetla tekst za pomocą echo.
Chodzi mi o to, czy dałoby radę zrobić tak, żeby po naciśnięciu dowolnego przycisku nie wyświetlało _A:_ w oczekiwaniu na polecenie, tylko żeby wykonać exit, uruchomić ponownie kompa.
Ewentualnie można użyć pause, jednak on wyświetla “press any key…”, a wolałbym żeby użytkownik zobaczył tylko te kilka linijek tekstu.
Pozdrawiam
Na dyskietkę można upakować też Linuksa ale skoro masz już dyskietkę startową, ponieważ nie pisałem nigdy skryptów dla DOSa, to podpowiem tylko tyle, że w powłoce linuksowej, to co chcesz osiągnąć napisałbym taki skrypt:
#!/bin/sh
roobal , dziekuje, że otworzyłeś mi oczy przecież pause nie rebootuje
Ale tyle, że w win wiem o istnieniu pliku autoexec, o tyle nie mam pojecia jak to działa w linuksie
Na bootdisk howto znalazłem coś takiego:
Chodzi mi o to, żeby jedyny efekt jaki osiągnąć to wyświetlić parę linijek tekstu i rebootnąć.
W jaki sposób zedytować tak pocket linux ?
Tu chodzi akurat o skrypty startowe (usługi systemu), które są wykonywane podczas startu systemu, natomiast Ty chcesz wyświetlić tekst/wykonać skrypt po załadowaniu się Linuksa, wtedy można go dodać do /etc/rc.local, podajesz w rc.local tylko ścieżkę do właściwego skryptu i powinien się wykonać po zalogowaniu do systemu.
Powinien
Pozdrawiam!
Tu masz gotowy pliczek resetujący komputer (program symuluje naciśnięcie trzech klawiszy CTRL+ALT+DEL). Plik umieszczamy na dyskietce startowej i wywołujemy z autoexec.bat
A w DOS-ie komenda na zamknięcie systemu nie brzmiała po prostu “exit”? Pod Windows wygląda to tak: “shutdown /s /t 0”, jednak pod DOS-em to nie zadziała.
W DOS-ie rzeczywiście istniała komenda (polecenie wewnętrzne) exit , ale nie służyła do zamykania systemu. Exit oznacza powrót do poprzedniego procesora (interpretera) poleceń. Niektóre bardziej rozbudowane programy DOS-owe umożliwiały tymczasowe wyjście do DOS-a bez usuwania programu z pamięci komputera. Było to realizowane przez uruchomienie nowego interpretera poleceń (command.com). Powrót do programu, czyli do poprzedniego interpretera następował po wydaniu polecenia exit
Do autora wątku
Jeśli chcesz zrestartować komputer, to musisz użyć dodatkowego programu, np takiego jaki proponuje floyd , albo zastosować taki mały trik.
Umieść tą linijkę na końcu pliku autoexec.bat
echo g=ffff:0000|debug
Co robi ten kod? Uruchamia program debug.exe i przekazuje do niego instrukcję skoku do podanego adresu, co powinno spowodować ponowne uruchomienie komputera. Program debug.exe musisz zamieścić na dyskietce lub CD (jest on częścią DOS-a)
Jeśli nie chcesz używać polecenia pause , które wyświetla własny komunikat, to znowu pozostaje chyba tylko własny program, który będzie oczekiwał na wciśnięcie klawisza przez użytkownika. Być może program, który zaproponował floyd to zapewnia (nie sprawdzałem, a on nie napisał)
Program debug.exe potrafi dużo więcej np. skompilować kod asemblerowy który dla restartu komputera wyglądał by tak:
100, instrukcja restartu dla Debug
MOV AH,0D
INT 21h
MOV AX, 40
MOV DS, AX DS MOV, AX
DS: DS:
OR BYTE PTR [17],0C ; odpowiednik naciśnięcie klawiszy CTRL + ALT
MOV AX,4F53 ; Issue "DEL" (53h = DEL scan code)
INT 15h Mov
DS: DS:
MOV WORD PTR [72],1234
JMP F000:FFF0
; Linia ta musi być puste (po prostu nacisnąć ENTER)
R CX R CX
20
N REBOOT.COM
W
Q
Nie mogę sobie z tym poradzić, plik reboot.exe nie daje żadnego efektu
autoexec.bat tutaj: tinyurl.com/autoexecdpplatek
– Dodane 30.10.2010 (So) 13:41 –
nawet jak z dysku twardego uruchomię reboot.exe to nie działa
Miałeś ściągnąć ten plik reboot.exe (16 bajtów) i umieścić go na dyskietce startowej. W pliku autoexec.bat wystarczy wpisać:
reboot.exe (razem z rozszerzeniem, a nie tylko reboot) Można też wpisać call reboot.exe i program się uruchomi. Sprawdzałem i działa. Z dysku twardego i spod windowsa oczywiście nie zadziała bo to jest programik pod DOSa.
To polecenie echo g=ffff:0000:debug też nie zadziała jeśli na dysku startowym nie ma programu debug.
Z tą choinką, to też nic nie wyjdzie bo te znaki < > * są zastrzeżone i nie są drukowalnem możesz zastąpić je np. kropkami.
Zrobiłem wszystko co trzeba:
autoexec.bat
@echo off
mode con codepage...
mode con codepage...
keyb pl,,
@echo Pierwszy wiersz tekstu
@echo Drugi wiersz tekstu
call reboot.exe
Mam na dyskietce plik reboot.exe.
Brakuje jakiegoś pliku???
Daj najpierw w pliku autoexec.bat to co u mnie działa poprawnie, a potem dodatkowo eksperymentuj.
No i czy plik reboot.exe jest na dyskietce.
@echo off
cls
echo ..
echo ....
echo ......
echo........
pause
call reboot.exe
File not found x4 po wklejeniu Twojego kodu. reboot exe jest na dyskietce.
Tylko kiedy pojawia się ten napis po naciśnięciu dowolnego klawisza czyli po pauzie czy wcześniej. Bez wywołania tego programu reboot.exe wszystko OK?
Te pliki, których dotyczą komunikaty File not found to: