�C�t���Ă��܂���ł����B
�R�}���h�v�����v�g�̃o�b�`�����t�@�C���ŃR�����g�������Ƃ��� REM ���g���܂��� REM �̓R�����g�̃}�[�N�ł͂Ȃ� �u�������Ȃ��v�R�}���h�ł����B
C:\> REM �R�����g�I
"/?" ��t����ƃw���v���\������܂��B
C:\> REM /?
�o�b�` �t�@�C���܂��� CONFIG.SYS �ɃR�����g (����) ���L�^���܂��B
REM [�R�����g]
�Ȃ̂ŁA���̂悤�� "/?" �Ŏn�܂�ςȑ�����t���Ă��܂��ƁB
REM /???? -- �R�����g -- ???/
C:\> test.bat
-- �̎g����������Ă��܂��B
���̂悤�ɃG���[���o�Ă��܂��܂��B
FOR �R�}���h�͏������J��Ԃ����Ƃ��ł��܂��B
���̃T���v���́Aaaaa.txt �̓��e���s���Ƃ� �_�u���N�H�[�e�[�V�����ň͂�ŏo�͂��Ă��܂��B
C:\> FOR /F %I IN (aaaa.txt) DO @ECHO "%I" >> bbbb.txt
����͎��̂悤�ɏ������Ƃ��ł��܂��B
C:\> (FOR /F %I IN (aaaa.txt) DO @ECHO "%I") > bbbb.txt
�������邱�ƂŁA�t�@�C������ɂ��鏈�����s�v�ɂȂ����� �����̑��x���オ�����肵�܂��B
�R�}���h�v�����v�g�� DIR �R�}���h�� �t�@�C���������o�͂���Ƃ��� �u/A�v�I�v�V�����Łu�f�B���N�g���ȊO�v���w�肵�܂��B
C:\> DIR /A:-D
�C�O�̊當���݂����ɂȂ��Ă܂��� �uD�v���f�B���N�g���ŁA�u-�v���Z�Z�ȊO�ɂȂ�܂��B
�R�����͏ȗ����邱�Ƃ��ł��܂��B
C:\> DIR /A-D
�u/B�v�I�v�V������t���ăt�@�C���������A �Ȃ�Ă��Ƃ��ł��܂��B
C:\> DIR /A:-D /B
���̑O�� CERTUTIL ���g���� �t�@�C���̃n�b�V���l�����߂邱�Ƃ��ł��܂��B
C:\> CERTUTIL -hashfile test.txt SHA1 SHA1 �n�b�V�� (�t�@�C�� decoded.txt): 05 f6 94 17 04 da 46 18 40 dd da a0 a8 87 0c 9a 21 cb 6e 17 CertUtil: -hashfile �R�}���h�͐���Ɋ������܂����B C:\> CERTUTIL -hashfile test.txt MD5 MD5 �n�b�V�� (�t�@�C�� decoded.txt): 77 c1 6d 26 74 1b 41 91 c9 25 8b 59 61 a0 c4 d3 CertUtil: -hashfile �R�}���h�͐���Ɋ������܂����B
�s�v�ȍs�� FIND �R�}���h�Ŏ�菜���܂��B
C:\> CERTUTIL -hashfile test.txt SHA1 | FIND /V ":"
05 f6 94 17 04 da 46 18 40 dd da a0 a8 87 0c 9a 21 cb 6e 17
�Ԃ̋���菜���܂��B FOR �R�}���h���ƊȒP�ł��B
C:\> @FOR /F "delims=/" %i IN ('CERTUTIL -hashfile test.txt SHA1 ^| FIND /V ":"') DO @((SET ITEM=%i) && (ECHO %ITEM: =%))
05f6941704da461840dddaa0a8870c9a21cb6e17
�����Ɏg�������ł��ˁB
Windows �̃R�}���h�v�����v�g�ɂ� CERTUTIL �Ƃ����R�}���h������܂��B �ؖ����Ƃ����A���R������R�}���h�Ȃ̂ł��� ���̃R�}���h���g�����Ƃ� base64 �t�@�C���̃f�R�[�h���ł��܂��B
[�Q�l]
Windows�R�}���h�W - certutil�FITpro
�܂� Linux �� base64 �G���R�[�h�����t�@�C�������܂��B �i�ʂ�Linux�ō��K�v�͂���܂���j
$ sudo vi source.txt $ cat source.txt ���͂悤 ����ɂ��� ������ $ cat source.txt | nkf -s | base64 | tee encoded.txt gqiCzYLmgqQKgrGC8YLJgr+CzQqCsYLxgs6C8YLNCg==
���̃t�@�C���� Windows �Ɏ����Ă��� �f�R�[�h���Ă݂܂��B
C:\> CERTUTIL -decode encoded.txt decoded.txt ���͒� = 44 �o�͒� = 31 CertUtil: -decode �R�}���h�͐���Ɋ������܂����B C:\> TYPE decoded.txt ���͂悤 ����ɂ��� ������
CERTUTIL �R�}���h�ŃG���R�[�h���ł��܂��B
C:\> CERTUTIL -encode decoded.txt encoded.txt ���͒� = 31 �o�͒� = 102 CertUtil: -encode �R�}���h�͐���Ɋ������܂����B C:\> TYPE encoded.txt -----BEGIN CERTIFICATE----- gqiCzYLmgqQKgrGC8YLJgr+CzQqCsYLxgs6C8YLNCg== -----END CERTIFICATE-----
Windows �̃R�}���h�v�����v�g�ɂ́A �R�}���h�̌��ʂȂǂ̕W���o�͂��N���b�v�{�[�h�ɕۑ����邽�߂� CLIP �Ƃ����R�}���h������܂��B
�g�������ȒP�� �p�C�v��_�C���N�g�œn�������ł��B
C:\> DIR | CLIP
C:\> CLIP < README.TXT
�R�}���h�̌��ʂ��t�@�C���ɕۑ�������A �R�}���h�v�����v�g�̃E�B���h�E��͈͑I������K�v���Ȃ����� ������Ƃ�����ƂŊ��Ă����R�}���h�ł��B
�R�}���h�v�����v�g�� COPY �R�}���h�ł� ���̂悤�� + ���g�����Ƃŕ����̃t�@�C����A�����邱�Ƃ��ł��܂��B
C:\> COPY /B 1.txt + 2.txt + 3.txt all.txt
���Ȃ݂� B �I�v�V������ �t�@�C�����o�C�i���t�@�C���Ƃ��Ĉ����w��ł��B
�t�H���_�ɑ�������t�@�C����A������Ƃ� �������� + �������̂͑�ςł��B ���̂悤�Ƀ��C���h�J�[�h�Ńt�@�C�����w�肵�Ă��A�����邱�Ƃ��ł��܂��B
C:\> COPY /B *.txt all.txt
�A�����鏇�Ԃ��t�@�C�����̂Ƃ��� �������̕����ȒP�ł��ˁB
���̋L���ł������̂ł����AWindows Vista/2003 Server ���� TIMEOUT �Ƃ����R�}���h���W���œ����Ă��邻���ł��B
[�Q�l]
timeout�^sleep�R�}���h�Ŏ��s���ꎞ��~���� �| @IT
TIMEOUT �� Linux �� sleep �̂悤�ȃR�}���h�� �w�肵�����ԑҋ@�����邱�Ƃ��ł��܂��B
C:\> TIMEOUT /T 3
3 �b�҂��Ă��܂��B���s����ɂ͉����L�[�������Ă������� ...
���b�Z�[�W�̒ʂ�A�L�[���������ƂŎ��ɐi�ނ��Ƃ��ł��܂��B
�I�v�V���� "/NOBREAK" �� [Ctrl]+C �ȊO�̃L�[���͂� �����ɂ��邱�Ƃ��ł��܂��B
C:\> TIMEOUT /T 3 /NOBREAK 3 �b�҂��Ă��܂��B�I������ɂ� CTRL+C �������Ă������� ...
����܂ŃR�}���h�v�����v�g�őҋ@������Ƃ��� �R�}���h�����邩 ping ���g���Ă����̂� TIMEOUT �̓o��͊������ł��ˁB
���b�Z�[�W���o�������Ȃ��Ƃ��� nul �Ɏ̂Ă܂��B
C:\> TIMEOUT /T 3 /NOBREAK > nul
nul �� /dev/null �݂����Ȃ��̂ł��B
�ȑO Bash �� pushd �ɂ��ď����܂����� �R�}���h�v�����v�g�ł� pushd ���g�����Ƃ��ł��܂��B
C:\> PUSHD D:\test D:\test> POPD C:\>
���̂悤�Ƀh���C�u���ړ����Ă���܂��B
�ʔ����̂��l�b�g���[�N�h���C�u�̃p�X���w�肵���Ƃ��ł��B
C:\> PUSHD \\192.168.1.15\public Z:\>
���̂悤�� Z ���珇�ɋĂ���h���C�u��T���� �ꎞ�I�Ƀl�b�g���[�N�h���C�u�̊��蓖�Ă����Ă���܂��B �i�}�C�R���s���[�^������ƁA���蓖�Ă�ꂽ�h���C�u�����\������Ă��܂��j
POPD ��A�R�}���h�v�����v�g�� EXIT ���� �ꎞ�I�Ɋ��蓖�Ă�ꂽ�h���C�u����� �l�b�g���[�N�h���C�u�̊��蓖�Ă������ʼn�������܂��B
FTP �R�}���h�� �ڑ���T�[�o�̃t�@�C���̑�����ς���ꍇ "quote site" �R�}���h���g�p���܂��B
�܂��� FTP �T�[�o�ɐڑ����܂��B
C:\> ftp 192.168.1.100
quote site �R�}���h�̌��� �ʏ�� chmod �R�}���h�̂悤�� �u�����v�u�t�@�C�����v���w�肵�܂��B
ftp> quote site chmod 755 test.txt
�g�����͂���ŏI���ł��� ���͂���� FTP �T�[�o���� chmod �̎g�p���T�|�[�g����Ă���K�v������܂��B
�������� quote �� �ڑ���ɒ��ڃR�}���h�𑗐M����R�}���h�� site �́A�ڑ���ŃT�|�[�g���Ă���R�}���h�� ���s����R�}���h�Ȃ̂ł��B
chmod ���T�|�[�g����Ă��邩�ǂ����� "quote site" �̌��� "help" ���w�肵�Ċm�F���܂��B
ftp> quote site help 214- The following SITE commands are recognized (* =>'s unimplement UMASK IDLE CHMOD HELP 214 Direct comments to ftp-bugs@KURO-BOX1.
��̗�� FTP �T�[�o�ł�
chmod �̑��ɂ� umask�Aidle ��
�T�|�[�g����Ă��܂��B
�i * ���t���Ă���ꍇ�̓T�|�[�g����Ă��܂���j
Windows Vista �ł� XP �܂ł̂悤�� �t�@�C�����R�}���h�v�����v�g�Ƀh���b�O���h���b�v���� �t�@�C���̃p�X��\�邱�Ƃ��ł��܂���B
���@���������ƌ������Ă݂�Ǝ��̂悤�ȋL��������܂����B
�y�Q�l�T�C�g�z
�������ς����Windows Vista 100�A���I �\ ��49�� �g�p�X�Ƃ��ăR�s�[�h�ŃR�}���h�v�����v�g�Ƀp�X����n��
����ɂ��� Vista �ł� [Shift] �L�[�������Ȃ���E�N���b�N����� ���̂悤�Ɂu�p�X�Ƃ��ăR�s�[�v���郁�j���[���o�Ă���̂� ����Ńt�@�C���̃p�X���R�s�[���Ă��� �R�}���h�v�����v�g�ɓ\��t���邻���ł��B
�h���b�O���h���b�v���֗��������̂Ŏc�O�ł��B
�R�}���h�v�����v�g�� FOR ���[�v�Ȃǂ��g���Ă���Ƃ��� �u����H �ϐ��̒l���ς��Ȃ��H�H�v�Ƃ������Ƃ�����܂��B
�Ⴆ�A�o�b�`�t�@�C���Ɏ��̂悤�ɏ����Ă���Ƃ��܂��B
FOR /F %%i IN ('SET') DO ECHO %%i
����́A�R�}���h SET �̎��s���ʂ�������ƕ\�����܂��B
���̌��ʂ̌������擾���邽�߂ɃJ�E���^��t�����Ƃ��܂��B
SET COUNT=0
FOR /F %%i IN ('SET') DO SET /A COUNT=%COUNT%+1
ECHO %COUNT%
��肭�s�������Ȃ̂ł����A���ʂ� 1 ���o�͂���܂��B
����͕ϐ��́g�����W�J�h�Ƃ������̂ŁA ���[�v�̒��� %COUNT% ����ɕ]������Ă��܂��̂� ���ʓI�ɂ͎��̂悤�ȏ����ɂȂ��Ă��܂����߂ł��B
SET COUNT=0
FOR /F %%i IN ('SET') DO SET /A COUNT=0+1
ECHO %COUNT%
�Ή��Ƃ��āg�x�����ϐ��h���g���Ƃ������@������܂��B
�x�����ϐ��́A���O�̒ʂ�x�����ĕϐ���]�����Ă����킯�ł���
�f�t�H���g�ł̓I�t�ACMD.exe �̃I�v�V������W�X�g���̕ύX��
SETLOCAL �ł̎w�肪�K�v�ɂȂ�܂��B
�i�ڂ����� CMD /? ���Ă��������j
����� SETLOCAL ���g���Č��܂��B
���̂悤�� SETLOCAL �� enabledelayedexpansion ���w�肵�� ENDLOCAL �ŏI���܂��B �i ENDLOCAL �͏ȗ��ł��B�j
����ɒx���]������ϐ��� "%" �ł͂Ȃ� "!" �ň݂͂܂��B
SETLOCAL enabledelayedexpansion SET COUNT=0 FOR /F %%i IN ('SET') DO SET /A COUNT=!COUNT!+1 ECHO %COUNT% ENDLOCAL
����őz�肵�Ă������ʂ��Ԃ�܂��B
�i�����ꍇ�̓t�@�C���ɕۑ����Ď��s���Ă��������j
�x�����ϐ����g��Ȃ��� CALL ���g�����@������܂��B
SET COUNT=0
FOR /F %%i IN ('SET') DO CALL SET /A COUNT=%%COUNT%%+1
ECHO %COUNT%
����ł��������ʂ��Ԃ�܂��B
CALL �̒��� "%" ����d�ɂȂ��Ă��邱�Ƃɒ��ӂ��Ă��������B
�R�}���h�v�����v�g�͌v�Z���ł��܂��B
�v�Z�ɂ́ASET �R�}���h�� /A �I�v�V�������g���܂��B
C:\> SET /A RESULT=1+2*4+5 14 C:\> ECHO %RESULT% 14
���ڎ��s�����ꍇ�́A�v�Z���ʂ��o�͂���܂��� �o�b�`�t�@�C���ɏ������ꍇ�͏o�͂���܂���B
���Z�q�͎��̂��̂��g���܂��B
() - �O���[�v�� ! ~ - - �P�����Z�q * / % - �Z�p���Z�q + - - �Z�p���Z�q << >> - �_���V�t�g & - �r�b�g���Z�q AND ^ - �r�b�g���Z�q�r���I OR | - �r�b�g���Z�q OR = *= /= %= += -= - ��� &= ^= |= <<= >>= , - ���̋��L��
">" ���܂܂��ꍇ�� ���_�C���N�g�ɂȂ�Ȃ��悤�� �_�u���N�H�[�e�[�V�����ň݂͂܂��B
C:\> SET /A RESULT="14>>2" 3
�������ϐ���錾�����ɁA�v�Z�������邱�Ƃ��ł��܂��B
C:\> SET /A 13*2+1
27
�擪�� 0 �̏ꍇ�́A8 �i���A0x �̏ꍇ�� 16�i���ɂȂ�܂��B
C:\> SET /A 011+0xA
19
��̗�́A10 �i���� 9 �� 10 �𑫂��Ă��܂��B
�R�}���h�v�����v�g�ł��A�ȒP�ȕ�����u�����\�ł��B
�Ⴆ�A���̂悤�ȕϐ� DATE ��錾���܂��B
C:\> SET DATE=2010/03/20 C:\> ECHO %DATE% 2010/03/20
"/" �� "-" �ɒu�����܂��B
C:\> ECHO %DATE:/=-%
2010-03-20
������ "%�ϐ�:�u������镶��=�u�����镶��%" �ł��B
"*" ���g���ƁA"*" �ȍ~����v����Ƃ���܂ł�u���ł��܂��B
������ "*" �͐擪�ɂ����g���܂���B
C:\> ECHO %DATE:*/=YEAR%
YEAR03/20
��̗�ł́A�ŏ��ɏo�Ă��� "/" �܂ł�u���ΏۂƂ��Ă��܂��B
�u�����镶������w�肵�Ȃ��� �����w�肵�����ƂɂȂ�܂��B
C:\> ECHO %DATE:*/=%
03/20
�Ȃ�ƂȂ��g���Ă�����@�̃����ł��B
C:\> TYPE nul > zero.txt
�u�R�}���h�v�����v�g�ŁA�L�[�{�[�h������ �N���b�v�{�[�h�̃e�L�X�g���y�[�X�g�ł��܂��H�v�� ������܂����B
���́A�}�E�X�ƃV���[�g�J�b�g��g�ݍ��킹�Ďg���̂��D���Ȃ̂� ���܂�C�ɂȂ�Ȃ��̂ł����A�L�[�{�[�h���[�U�� �}�E�X�Ɏ����ւ���̂��A�D���ł͂Ȃ��悤�ł��B
������ƍl���Ă݂܂����B
�ҏW �� �\��t���́A���̐}�̂悤�� �E�B���h�E�̍���̃A�C�R��������Ăяo���܂��B
�ӊO�ƒm���Ă��Ȃ��悤�Ȃ̂ł��� [Alt+Space] �ŁA�E�B���h�E�̍���̃A�C�R���̃��j���[�� �Ăяo�����Ƃ��ł��܂��B
������g���܂��B
���Ƃ́A���ʂ� [E] �i�ҏW�j�� [P] �i�\��t���j�������܂��B
1�A�N�V�����ł͖����������̂ł��� �L�[�{�[�h���[�U�ɂ� �}�E�X���g��Ȃ��čςނ����ŏ[���Ȃ悤�� �������Ă��炦�܂����B
����Ă���� [Alt+Space] [E] [P] �ƃ��Y���ǂ������܂��B ���ł��^��Ɏv�����Ƃ͑厖�ł��ˁB
"old.txt" �� "new.txt" ������A���e���ς���Ă���� "new.txt" �Œu�������� �ς���Ă��Ȃ���� ���̂܂܁i�^�C���X�^���v��ύX�������Ȃ��j�Ƃ����悤�� �������s���܂��B
�܂�A���̂悤�ȏ����ɂȂ�܂��B
�t�@�C���̔�r�́AFC �R�}���h���g�p���܂��B
FC �R�}���h�́A��r�������ʂ��u��v�v�̏ꍇ�A����I���A �u�s��v�v�̏ꍇ�́A�ُ�I���ƂȂ�̂ŁA����𗘗p���� ���̂悤�ȃR�}���h���쐬���܂��B
C:\> fc /B "old.txt" "new.txt" > nul 2>&1 && ^ More? del "new.txt" || ^ More? move /Y "new.txt" "old.txt"
�R�}���h�������̂Ő܂�Ԃ��Ă��܂����A1 �s�̃R�}���h�ł��B
���s����ƁA���ʓI�� "old.txt" �� 1 �����c��܂��B
"old.txt" �� "new.txt" ���ς���Ă邾���łȂ��A "old.txt" �����݂��Ȃ��ꍇ�� "new.txt" �Œu�������܂��B
�t�@�C�����w�肵�Ď��s���܂������A������g���ăo�b�`���������� �t�H���_�P�ʂœ������O�̃t�@�C�����r���Ēu�������A�Ƃ��������Ƃ��ł��܂��B �T�[�o�Ԃ̈ړ��Ȃǂ��s���Ƃ��ɁA�ŐV�ł̃t�@�C���������ړ����āA�����̃t�@�C���� �^�C���X�^���v���X�V�������Ȃ��A�Ƃ������Ƃ��ȂǂɎg�������ł��B
��y�� �R�}���h�v�����v�g�� du ���ۂ����Ƃ����������ł��Ȃ��� �����Ă����̂ŁA�R�}���h�v�����v�g�̉��[���𗝉����Ă��炨���� ������ƍl���Ă݂܂����B
Windows XP �œ���m�F���܂����B Windows 2000 �ł́A�f�B���N�g���̃p�X�Ƀ}���`�o�C�g������ �܂܂�Ă���� ���܂������Ȃ��Ƃ�������܂��B
@ECHO OFF
SET DIROPTION=/A:-D
SET CURRENTPATH=%CD%
SET TARGETPATH=%~1
IF "%TARGETPATH%"=="" SET TARGETPATH=%CURRENTPATH%
CD /D %TARGETPATH%
FOR /R %%i IN (.) DO (
FOR /F "usebackq tokens=1,3" %%j IN (
`DIR %DIROPTION% /-C "%%~fsi" 2^>nul ^|
FINDSTR "�̃t�@�C��.*�o�C�g$"`
) DO (
ECHO "%%~fi",%%j,%%k
)
)
CD /D %CURRENTPATH%
����� du.bat �Ƃ��ĕۑ����܂��B
�����ɑΏۂ̃f�B���N�g�����w��ł��܂��B �w�肵�Ȃ��ꍇ�A�J�����g�f�B���N�g�����ΏۂƂȂ�܂��B
C:\> du.bat D:\wwwroot
"D:\wwwroot",1,19001
"D:\wwwroot\css",7,106837
"D:\wwwroot\img",13,2685964
�o�͌��ʂ́A�p�X�A�t�@�C�����A���v�t�@�C���T�C�Y�ł��B
���̃X�N���v�g�́A�t�@�C������ 0 �̃f�B���N�g���� �������ׂ����炷���߂ɏo�͂��Ȃ��悤�ɂ��Ă��܂��B �t�@�C������ 0 �̃f�B���N�g�����o�͂���ɂ� 3 �s�ڂ̐ݒ�����̂悤�ɕύX���܂��B
SET DIROPTION=/A:-
COLOR �Ƃ����R�}���h�� �R�}���h�v�����v�g�̕����Ɣw�i�̐F�� �ς��邱�Ƃ��ł��܂��B
C:\> COLOR 2F
16 �i�� 2 �� �Ŏw�肵�܂��B �Ђƌ��ځi��̗�ł� "2"�j�� �w�i�F�A �ӂ����ځi��̗�ł� "F"�j�� �����F�ł��B
�F�̒l�́A���̂悤�ɂȂ�܂��B
0 = �� 8 = �D�F 1 = �� 9 = ���邢�� 2 = �� A = ���邢�� 3 = ���F B = ���邢���F 4 = �� C = ���邢�� 5 = �� D = ���邢�� 6 = ���F E = ���邢���F 7 = �� F = �P����
���̂悤�� �l���P�̏ꍇ�� �����F���ύX����܂��B
C:\> COLOR 2
���̂悤�� �����Ɣw�i�̐F�� �����F���w�肵���ꍇ�� �����������Ȃ邽�߂Ȃ̂� �ύX����܂���B
C:\> COLOR 22
�����l�ɖ߂��ɂ� ���̂悤�Ɉ��������Ŏ��s���܂��B
C:\> COLOR
�o�b�`�����̒��ł́A���́u�����l�ɖ߂��v�͎g���Ȃ��悤�ł��B
Windows 2000/XP ���� �R�}���h�v�����v�g�� TITLE �R�}���h�� �E�B���h�E�̃^�C�g����ς��邱�Ƃ��ł���悤�ɂȂ�܂����B
@ECHO OFF TITLE �R�}���h�v�����v�g�ʼn������Ă��邩�킩��₷���I PAUSE
��������s����� ���̂悤�ɂȂ�܂��B
���Ԃ̂����鏈���̂Ƃ��Ȃ� �R�}���h�v�����v�g�̃^�C�g����ς��Ă����� ���̏��������Ă��邩�킩��₷���Ȃ�܂��B
�NjL�^�Ń��O�t�@�C���Ȃǂ��쐬���Ă���� �t�@�C���� 0 �o�C�g�ŃN���A�������Ƃ�������܂��B
���悤�ȃR�}���h�� �t�@�C���� 0 �o�C�g�ɂ��܂��B �i�t�@�C�������݂��Ȃ���A 0 �o�C�g�̃t�@�C�����쐬���܂��j
$ cat /dev/null > 0.txt
DOS �̏ꍇ�́A���̂悤�ɃR�}���h��ł��܂��B null �ł͂Ȃ��Anul �Ȃ̂Œ��ӂ��Ă��������B
C:\> type nul > 0.txt
DOS�Ńl�b�g���[�N��̃t�H���_�ɃA�N�Z�X���悤�Ƃ���� ���̂悤�ɃG���[���������܂��B
C:\>cd \\192.168.1.10\share
CMD �ł� UNC �p�X�͌��݂̃f�B���N�g���Ƃ��ăT�|�[�g����܂���B
�����ŁASUBST �R�}���h���g�p���܂��B
C:\>SUBST Z: \\192.168.1.10\share C:\>Z: Z:\>
SUBST �́A���z�h���C�u�����蓖�Ă�R�}���h�ł��B ��̏ꍇ�� �u\\192.168.1.10\share�v���uZ�h���C�u�v�Ƃ��Đݒ肵�܂����B
����ŁA�l�b�g���[�N��̃t�H���_�����[�J���Ɠ����悤�� DOS����A�N�Z�X���邱�Ƃ��ł��܂��B
���蓖�Ă���������Ƃ��́A���̂悤�ɃR�}���h��ł��܂��B
C:\>SUBST Z: /D
DOS��FOR�R�}���h�́A������DOS�̃R�}���h���ł� �̂ƂȂ�d�v�ȃR�}���h�ł��B
����FOR�R�}���h���Ŏ��s����R�}���h�� �p�C�v��_�C���N�g���g�p�������ꍇ������܂��B
�Ⴆ�E�E�E
C:\>FOR /F %i IN ('DIR /B /A:-D | FIND /C /V ""') DO ECHO %i
| �̎g����������Ă��܂��B
��̗�ł́A�J�����g�f�B���N�g���̃t�@�C���̐����o�͂��悤�Ƃ��Ă���̂ł��� �u| �̎g����������Ă��܂��B�v�ƃG���[���\������Ă��܂��܂��B
����́AFOR�R�}���h���̃p�C�v��_�C���N�g�� "^"�i�L�����b�g�j���g���ăG�X�P�[�v���Ă��K�v�����邽�߂ł��B
�������́A���̂悤�ɂȂ�܂��B
C:\>FOR /F %i IN ('DIR /B /A:-D ^| FIND /C /V ""') DO ECHO %i
3
���_�C���N�g�����l�ł��B
FOR /F "tokens=1,2 delims==" %i IN ('ASSOC') DO (
IF NOT "%j" == "" (
FOR /F "tokens=2 delims==" %k IN ('FTYPE %j 2^>nul') DO (
ECHO %i
ECHO -^> %k
ECHO.
)
)
)
��̗�́A�t�@�C���̊֘A�t�����o�͂��Ă���̂ł����A 3�s�ڂ̕W���G���[���̂Ă�u2^>nul�v�́u>�v�� �G�X�P�[�v���Ă��܂��B
WSH�ɂ́A�W�����͂���X�N���v�g����邱�Ƃ��ł��Ȃ��̂� DOS�̏����ƁAWSH�̏������K�v�ȏꍇ�́A2�̃t�@�C�����K�v�ɂȂ�܂��B
����́A������ƕς������łP�̃t�@�C���Ŏ��s���܂��B
@if (1==1) /* @ECHO OFF rem ======================================================== rem = MS-DOS ���� rem ======================================================== :DOS ECHO I'm MS-DOS! :JSCRIPT CScript //Nologo //E:JScript "%~f0" %* GOTO :EOF rem */ @end /** ======================================================== * JavaScript ���� * ======================================================== **/ // �又���̌Ăяo�� WScript.quit(main(WScript.arguments.length , WScript.arguments)); // �又�� function main( argc, argv ) { WScript.echo("I'm JScript!"); }
����� test.bat �Ƃ��Ď��s����ƁA�ȉ��̂悤�Ȍ��ʂɂȂ�܂��B
C:\>test.bat
I'm MS-DOS!
I'm JScript!
DOS�̏������ɓ����t�@�C����JScript�Ƃ��ď��������Ă��܂��B
�|�C���g�͐擪�́u@if�v����u@end�v�܂łł��B �u@if�v�́A�����t���R���p�C���Ƃ������̂Ȃ̂ł����A ���̐擪���u@�v�Ȃ̂ŁADOS�́u@�v�Ƌ����ł��Ă���̂ł��B
1�s�ڂ́u/*�v�ŁAJScript�́u*/�v�܂ŃR�����g�ɂȂ�܂��B �t��DOS�̕��́uGOTO :EOF�v�ŏ����I���ɂȂ�̂ŁA �O����DOS�A�㔼��JScript�̏������L�ڂł��܂��B
WSH(JScript)�̋N������DOS�Ŏ����������ׂēn���Ă��܂��̂� ��������ɏ������邱�Ƃ��\�ł��B
�ȉ��́A�ȒP�ȃT���v���ł��B
@if (1==1) /* @ECHO OFF rem ======================================================== rem = MS-DOS ���� rem ======================================================== rem �����ݒ� SET SCRIPT=CScript //Nologo //E:JScript "%~f0" rem �������擾 FOR /F %%i IN ('%SCRIPT% "%%m/%%d"') DO SET TODAY=%%i rem �������o�� ECHO ������%TODAY%�ł��B GOTO :EOF rem */ @end /** ======================================================== * JavaScript ���� * ======================================================== **/ // �又���̌Ăяo�� WScript.quit(main(WScript.arguments.length , WScript.arguments)); // �����t���t�擾���� function getDate( fmt ) { function _zero( val, len ) { for ( var i = 0; i < len; i++ ) { val = "0" + val; } return val.substr( val.length - len, len ); } if ( ! fmt ) fmt = "%Y/%m/%d %H:%M:%S"; var now = new Date(); fmt = fmt.replace( "%Y", now.getFullYear() ); fmt = fmt.replace( "%m", _zero(now.getMonth() + 1, 2) ); fmt = fmt.replace( "%d", _zero(now.getDate() + 1, 2) ); fmt = fmt.replace( "%H", _zero(now.getHours() + 1, 2) ); fmt = fmt.replace( "%M", _zero(now.getMinutes() + 1, 2) ); fmt = fmt.replace( "%S", _zero(now.getSeconds() + 1, 2) ); return fmt; } // �又�� function main( argc, argv ) { if ( argc > 0 ) { WScript.echo( getDate( argv(0) ) ); } else { WScript.echo( getDate() ); } }
���s���ʂ͈ȉ��̂悤�ɂȂ�܂��B
C:\>test.bat
������02/27�ł��B
DOS�ł͓�������t�̓��t��JScript�ō쐬���Ă݂܂����B
DOS�ɂ́ALinux�́ucat -n�v�̂悤�� �e�L�X�g�f�[�^�� �s�ԍ���t���ĕ\������R�}���h������܂���B
����́AFIND �R�}���h���g���Ď������Ă݂܂��B
FIND �R�}���h�́A�t�@�C����W�����͂̓��e���� �L�[���[�h���܂܂��s��Ԃ��Ă����R�}���h�ł��B ���K�\�����g���Ȃ� grep �R�}���h�݂����Ȃ��̂ł��B
���Ƃ��A���̂悤�ȃe�L�X�g�t�@�C�� test.txt ������܂��B
���������� �J�L�N�P�R ���������������Ă� �@�Ȃɂʂ̂� �@�@�͂Ђӂւ� �� �� �� ������ �킨��
TYPE �R�}���h�ŊJ���āAFIND �R�}���h�Ƀp�C�v���܂��B
C:\>TYPE test.txt | FIND /N /V "/////"
[1]����������
[2]�J�L�N�P�R
[3]����������������
[4]�@�Ȃɂʂ̂�
[5]�@�@�͂Ђӂւ�
[6]��
[7]��
[8]��
[9]������
[10]�킨��
�e�s�ɍs�ԍ����t���ďo�͂���܂����B
FIND �R�}���h�� /N �́A�s�ԍ���t����I�v�V�����B /V �́A�����Ɂg��v���Ȃ��h�ꍇ�Ɍ��ʂ�Ԃ��I�v�V�����ł��B
�܂�A�e�L�X�g�f�[�^�̒��ɐ�ɑ��݂��Ȃ�������������ɂ��� �u����ȊO�̍s�v���u�S�Ă̍s�v���擾���Ă���킯�ł��B
UNIX/Linux�ł́A�R�}���h�̎��s���ʂ͊ȒP�ɕϐ��ɓ���邱�Ƃ��ł��܂��� DOS�ł́A������ƍH�v���K�v�ł��B
�Ƃ����Ă��A�����Ύ����݂����Ȃ��̂Ȃ̂ł��B �����̃J�M�� FOR �R�}���h�ł��B ���̃T���v���ł́A�uTIME /T�v�̌��ʂ� ���[�J���ϐ� NOWTIME �ɓ���Ă��܂��B
C:\>FOR /F "usebackq" %t IN (`TIME /T`) DO SET NOWTIME=%t C:\>ECHO NOWTIME=%NOWTIME% NOWTIME=21:57
/F �́AIN �̌��ʂ�X�g��1�s����������I�v�V�����ł��B 1�s���Ƃ� DO �ȉ��̃R�}���h���J��Ԃ��킯�ł����A �R�}���h�̎��s���ʂ�1�s�Ȃ̂ŁA1���l���Z�b�g����܂��B
"usebackq" �́A �R�}���h���݂̈͂ɁA"`"�i�o�b�N�N�H�[�e�[�V�����j�� �g�p����I�v�V�����ł��B ���̃I�v�V������t���Ȃ��ꍇ�A���̂悤�� �V���O���N�H�[�e�[�V�����ŁA �R�}���h���݂͂܂��B
C:\>FOR /F %t IN ('TIME /T') DO SET NOWTIME=%t
UNIX/Linux �̂悤�Ɂu�R�}���h�̎��s�̓o�b�N�N�H�[�e�[�V��������ˁv���� �l�́A���̃I�v�V������t���Ă��������B
�o�b�`�t�@�C���ɏ����Ƃ��́A���̂悤�ɏ����܂��B
@ECHO OFF FOR /F "usebackq" %%t IN (`HOSTNAME`) DO SET HNAME=%%t ECHO %HNAME%
FOR �R�}���h���� "%" �� "%%" �ɂ��Ȃ��Ă͂Ȃ�܂���B
HOSTNAME �́A �z�X�g�����o�͂���R�}���h�ł��B WindowsXP�ȏ�ŁA�C���^�[�l�b�g�v���g�R���iTCP/IP�j�� �C���X�g�[������Ă���Ǝg�p�ł��܂��B �i�z�X�g�����~���������Ȃ�A���ϐ� %COMPUTERNAME% ������܂��j
DOS�v�����v�g�ł́A exe�̎��s�t�@�C����A bat�̃o�b�`�t�@�C���́A �g���q���ȗ����Ă����s���邱�Ƃ��ł��܂��B
�ȗ����Ď��s�ł���g���q�� ���ϐ� PATHEXT �ŁA��`����Ă��܂��B �R�}���h�v�����v�g�ŁA�ȉ��̂悤�ɑł��Ē��ׂ܂��B
C:\>SET PATHEXT PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
SET �́A ���ϐ���ݒ�E�Q�Ƃ���R�}���h�ł��B �����Ɋ��ϐ�����t����ƁA���̒l��\�����邱�Ƃ��ł��܂��B ��������t���Ȃ��ƁA�S�Ă̊��ϐ��ƒl��\�����܂��B
�ȉ��̂悤�Ɋg���q�����Ⴄ�t�@�C��������ꍇ�A �t�@�C���������Ŏ��s����ƁA ���ϐ� PATHEXT �� ��`����Ă��鏇�ԂŎ��s���܂��B
C:\>DIR /A:A /B test.bat test.vbs test.wsh C:\>test I'm test.bat! �� test.bat �����s���ꂽ
���̏ꍇ�Atest.com�i�����j�� test.exe�i�����j�� test.bat�i�L��j�̏��ԂŒT���܂��B �����Atest.bat ���폜����ƁA���̌������� test.vbs �����s�����킯�ł��B
�V�����ȗ��������g���q������ꍇ�́A���̊��ϐ� PATHEXT �� �lj�����ƁA�g���q�Ȃ��Ŏ��s�ł���悤�ɂȂ�܂��B
���Ȃ݂Ɍ�������p�X�i�ꏊ�j�́A���ϐ� PATH �� ��`����Ă��鏇�Ԃł��B �܂�APATH �Œ�`����Ă��錟������p�X�̏��ԂɁA PATHEXT �Œ�`����Ă���g���q�̏��ԂŒT���Ă����킯�ł��B
�����Љ��̂́ADOS�R�}���h���g���� �ȒP�Ƀt�H���_�̃c���[�}���쐬���鏬�l�^�ł��B �i�e���r�V���b�s���O�̃m���Łj
�܂��́A�ȉ��̓��e�Łuctree.bat�v���쐬���܂��B �ʂɃo�b�`�t�@�C�����쐬����K�v�͖����̂ł��� ���������Ȃ̂ł��ł��g����悤�Ƀt�@�C���� ���Ă����܂��B
�]�k�ł����A�o�b�`�t�@�C������ �R�}���h�Ɠ����itree.bat�j�̂悤�ɂ��Ă��܂��� �R�}���h���s���Ƀo�b�`�t�@�C���̕��� �Ă�Ă��܂��̂� �R�}���h�Ƃ͕ʂ̖��O��t���܂��傤�B
@ECHO OFF ECHO ^<pre^> TREE ECHO ^</pre^>
ECHO �̌��ɏo�Ă��� "^"�i�L�����b�g�j�́A DOS�p�̃G�X�P�[�v�����ł��B
">" �� "<" �� ���_�C���N�g�p�̓��ꕶ���Ȃ̂ŁA �o�͂���ꍇ�́A�G�X�P�[�v���Ȃ���Ȃ�܂���B
TREE �� �t�H���_�̊K�w�����o�I�ɕ\�����Ă����R�}���h�ł��B
C:\>TREE �� ���݂̃t�H���_�ȉ����o�� C:\>TREE \ �� ���݂̃h���C�u�ȉ����o�� C:\>TREE c:\test �� �w��̃t�H���_�ȉ����o�� C:\>TREE /F �� �t�@�C�����o��
��قǂ́uctree.bat�v�����s���܂��B
D:\Photo Files>ctree.bat > tree.html
�쐬���ꂽ�utree.html�v��Web�u���E�U�ŊJ���� ���̂悤�Ƀt�H���_�̊K�w���\������܂��B
�t�H���_ �p�X�̈ꗗ: �{�����[�� ���[�J�� �f�B�X�N
�{�����[�� �V���A���ԍ��� 00000000 0000:0000 �ł�
D:.
�������
�����Ƒ����s
�� ����2005�N_���H
�� ����2006�N_���H
�� ����2007�N_����
�� ����2008�N_�k��B
�����v���C�x�[�g
�����F�l
�����H�H
�����A���ꂾ�ƃt�H���_�̃p�X���\������Ȃ��̂� �uctree.bat�v��������Ɖ������܂��B
@ECHO OFF ECHO %CD% ECHO. ECHO ^<pre^> TREE ECHO ^</pre^>
%CD% �� ���݂̃t�H���_�̃p�X���i�[����Ă���ϐ��ł��B
D:\Photo Files
�t�H���_ �p�X�̈ꗗ: �{�����[�� ���[�J�� �f�B�X�N
�{�����[�� �V���A���ԍ��� 00000000 0000:0000 �ł�
D:.
�������
�����Ƒ����s
�� ����2005�N_���H
�� ����2006�N_���H
�� ����2007�N_����
�� ����2008�N_�k��B
�����v���C�x�[�g
�����F�l
�����H�H
1�s�ڂɁA�t�H���_�̃p�X���\�������悤�ɂȂ�܂����B
�ӊO�ƒm���Ă��Ȃ���s�̏o�͂ł��B
�ʏ�A���b�Z�[�W�̏o�͂ɂ� ECHO �R�}���h���g�p���܂����A ���̃R�}���h�������Ȃ��Ŏ��s���Ă���s�͏o�͂���܂���B
C:\> ECHO ECHO �� <ON> �ł��B C:\> ECHO �Q ���S�p�X�y�[�X ECHO �� <ON> �ł��B C:\> ECHO " " " "
���͋�s��\������ɂ́A ECHO. �ƁA�s���I�h��t���Ă��܂��B
C:\> ECHO.
���Ȃ݃s���I�h�� ECHO �Ɨ����ď����� ���ʂɃs���I�h���o�͂���Ă��܂��܂��̂� ���ӂ��Ă��������B
C:\> ECHO . .
DOS�o�b�`�t�@�C���� �T�u���[�`������邱�Ƃ��ł��܂��B
1: @ECHO OFF 2: 3: CALL :HOGEHOGE 1 4: CALL :HOGEHOGE 2 5: CALL :HOGEHOGE 3 6: 7: GOTO :EOF 8: :HOGEHOGE 9: ECHO %1
��̃o�b�`�t�@�C�������s����Ɖ��̂悤�ȏo�͌��ʂɂȂ�܂��B
C:\> TEST1.BAT 1 2 3
3�`5�s�ڂ�CALL��8�s�ڂ�HOGEHOGE���x���ɃW�����v���܂��B CALL�́A�o�b�`�t�@�C���̍Ō�ɗ���ƁA�Ăяo�����ɖ߂�܂��̂ŁA 3��8��9��4��8��9��5��8��9����Ə������ڂ�܂��B
7�s�ڂ�:EOF�́A�ŏ�����ݒ肳��Ă��郉�x���ŁA�t�@�C���̍Ō�������Ă��܂��B 5�s�ڂ̏����̌�ɁA 8�s�ڂɏ������ڂ�Ȃ��悤�ɂ��Ă��܂��B
9�s�ڂ� %1���g�p���Ēl���擾���Ă��܂����A CALL�̌Ăяo���ɂ͈������w��ł� %1,%2����Ɠ����Ă��܂��B
�T�u���[�`�����g���Ƃ��́A ���̂悤�ɏ����܂��B
@ECHO OFF CALL :HOGEHOGE1 1 CALL :HOGEHOGE2 2 GOTO :EOF :HOGEHOGE1 ECHO %1 GOTO :EOF :HOGEHOGE2 ECHO %1
WindowsXP�ŁA���R���������l�^�ł��B
�܂��A �u�t�@�C�����w�肵�Ď��s�v�Ȃǂ� �ucmd�v�Ƒł��� DOS�v�����v�g���N�����܂��B
�N��������A �����ނ�� [Alt]+[Enter]�������Ă��������B DOS�v�����v�g���S��ʕ\���ɂȂ�܂��B
�u�������̉�ʌ��Ă��Ȃ��c�v�� ���������C���ɂȂ�܂����B
���Ȃ݂ɁA���ɖ߂��Ƃ����A[Alt]+[Enter]�ł��B