GUI�ɑ���CUI�̗D�ʐ���1�Ƃ��āA��Ƃ̎���������������B���i�s����Ƃ�1�̃R�}���h�ɂ܂Ƃ߂���A�����̃t�@�C���ɑ��ē����������J��Ԃ��s������Ƃ��������Ƃ���r�I�ȒP�Ȃ̂��BWindows�ɂ�WSH�iWindows Script Host�j���p�ӂ���Ă���B�������ALinux��bash�X�N���v�g�̕����ȒP�Ȃ̂��B
�@�R�}���h�ɂ���Ƃ�����������ɂ́A���̓��e���L�q�����e�L�X�g�t�@�C����p�ӂ�������̂ł��B���̃e�L�X�g�t�@�C�����u�V�F���X�N���v�g�v�Ƃ����܂��B
�@�ł��ȒP�ȃV�F���X�N���v�g�́A�R�}���h�����̂܂ܕ��ׂ邱�Ƃł��B�Ⴆ�Atar�R�}���h�Ńt�@�C���̃o�b�N�A�b�v�����Ƃ��܂��傤�B�P���Ƀ��[�g�f�B���N�g�����牺��S���o�b�N�A�b�v����ɂ��Ă��A/dev��/tmp�͕K�v�Ȃ��ł��ˁB����ƁA
$ tar cf /dev/nst0 /bin $ tar cf /dev/nst0 /boot $ tar cf /dev/nst0 /etc $ tar cf /dev/nst0 /home
�Ƃ�������ɂȂ�܂��i���j�B
�@��������������^�C�v����͖̂ʓ|�ł��B���������A�o�b�N�A�b�v�ɂ͂�����x�̎��Ԃ�������̂����ʂł�����A�O�̃R�}���h���I������܂Ŏ��̃R�}���h�̓^�C�v�ł��܂���B����ł͍�ƌ������オ��Ȃ��ł��傤�B
�@�����ŁA�V�F���X�N���v�g������Ă݂܂��傤�Bsysbackup.sh�i���j�Ƃ������O�̃t�@�C�������A
tar cf /dev/nst0 /bin tar cf /dev/nst0 /boot tar cf /dev/nst0 /etc tar cf /dev/nst0 /home
��L�̂悤�Ɏ��s����R�}���h����ׂ邾���ł��BWSH���ƁA���i���j���[�ƃ}�E�X�ōs���Ă����Ƃ�VB Script��JScript�ɖ|�Ȃ���v���O���������K�v������܂��B�Ƃ��낪�A�V�F���X�N���v�g�͕��i�g���Ă���R�}���h�����������ł����̂ł��B
�@
$ file sysbackup.sh
�@���s����̂��ȒP�ł��B
$ sh sysbackup.sh
�Ƃ���A�����I�ɏ����R�}���h�����s���܂��B���̊Ԃɂق��̎d�����ł��邵�A�A�Q�O�Ɏ��s����A�����ɂ͏I�����Ă���ł��傤�B
�@�쐬�����V�F���X�N���v�g�ʂ̃v���O�����Ɠ������@�Ŏ��s���邱�Ƃ��ł��܂����A����ɂ�2����H���K�v�ł��B�܂��A�V�F���X�N���v�g�̐擪�Ɏ��̍s��lj����܂��B
#!/bin/sh
�@����͂��ŁA�u#!�v�Ȍ�ɏ����ꂽ�v���O�����ł��̃X�N���v�g�����s����Ƃ����Ӗ��ł��B���p�Ƃ��āu#!/bin/perl�v�u#!/bin/ruby�v�i�Ғ��j�Ȃǂ�����܂��B
�@����1�́A�t�@�C���Ɏ��s������t���邱�Ƃł��Bchmod�R�}���h���g���āA
$ chmod u+x sysbackup.sh
�Ƃ��܂��B����2�̍�Ƃ��s���A
$ ./sysbackup.sh
�Ŏ��s�ł���悤�ɂȂ�܂��B
�@�V�F���X�N���v�g���o�C�i���̎��s�t�@�C���Ƌ�ʂ��Ȃ��̂́A���o�͂̃��_�C���N�g�ł������ł��B�܂�A
$ ./sysbackup.sh > log.txt
�Ƃ���A�o�͌��ʂ�log.txt�Ƃ����e�L�X�g�t�@�C���ɕۑ��ł��܂��B�܂��A����I�Ɏ��s����̂ł���A�X�N���v�g�̒��Ń��_�C���N�g���w�肷�邱�Ƃ��ł��܂��B���̏ꍇ�A�_������ቺ����_�ɒ��ӂ��K�v�ł��B
�@�Ȃ��A���ʂɃ��_�C���N�g���w�肷��ƁA�W���G���[�o�͂ւ̏o�͂̓��_�C���N�g��̃t�@�C���ł͂Ȃ��A�[���ɕ\������܂��B����́A�G���[���N�������Ƃ����[�U�[�ɒm�点�邽�߂ł��B���̕W���G���[�o�͂����_�C���N�g����Ȃ�A
$ ./sysbackup.sh > log.txt 2> err.txt
�Ƃ��܂��B�u2>�v�Ƃ����̂��~�\�ŁA���ꂪ�W���G���[�o�͂̃��_�C���N�g�̎w���ł��B����ɁA
$ ./sysbackup.sh > log.txt 2>&1
�Ƃ���ƁA���ׂĂ̏o�͂�log.txt�ɋL�^����܂��B
�@�V�F���X�N���v�g�ŕ�������o�͂���ɂ́A����echo�R�}���h���g���āA
echo 'Hello, world'
�ȂǂƂ��܂��B�������A������ƒ�����������o�͂��������Ƃ�����ł��傤�B�܂��AHTML�t�@�C���ւ̉��H���s���Ȃ�A�w�b�_�Ȃǂ����₷���`�ŋL�q�������Ǝv���ł��傤�B����ȂƂ��ɕ֗��Ȃ̂��A�u�q�A�h�L�������g�v�ł��B
�@�Ⴆ�AHTML�̃X�P���g����echo�R�}���h�ŏo�͂���Ȃ�A
#!/bin/sh echo "<HTML>" echo "<HEAD>" echo "<TITLE></TITLE>" echo "</HEAD>" echo "<BODY>" echo "<H1></H1>" echo "<P>" echo "</P>" echo "</BODY>" echo "</HTML>"
�ł����A�q�A�h�L�������g���g���ƁA
#!/bin/sh cat << EOS <HTML> <HEAD> <TITLE></TITLE> </HEAD> <BODY> <H1></H1> <P> </P> </BODY> </HTML> EOS
�ƂȂ�܂��B�u<<�v�̌�Ɏw�肵�������o�����钼�O�܂ŁA�R�}���h�ɑ���W�����͂Ƃ��Ĉ����܂��B��̗�ł́A�uEOS�v��ڈ�ɂ��Ă��܂��B
�@�q�A�h�L�������g���g���ƁA�o�͂���������������̂܂��������̂ŁA�X�N���v�g����������ƋL�q�ł��܂��B�ォ�當����lj�����̂��ȒP�ł��B
�@�����������Ƃ��J��Ԃ��V�F���X�N���v�g�����ł����Ȃ�̏ȗ͉��ɂȂ�܂����A�����Ώۂ����s���Ɍ��߂������Ƃ�����܂��B�V�F���X�N���v�g�̓e�L�X�g�t�@�C���Ȃ̂ŁA���̂��тɏ���������̂�1�̎�ł��B�������A�����Ώۂ̐��������Ă���Ɩʓ|�ł����A���܂�X�}�[�g�ȕ��@�ł͂���܂���B
�@������������邽�߁A�V�F���X�N���v�g�Ɉ�����n�����Ƃ��ł��܂��B�����́A�V�F���X�N���v�g����͏��Ԃ�$1�A$2�A$3�A�c�c�Ƃ��ĎQ�Ƃł��܂��B�����̐��́u$#�v�ŕ�����܂��B�܂��A�u$*�v�Ƃ��邱�ƂŁA���ׂĂ̈�������x�ɎQ�Ƃł��܂��B�Ȃ��A�u$0�v�̓X�N���v�g���Ăяo���ꂽ�Ƃ��̖��O������܂��B
�@��Ƃ��āA�ȒP�Ȃ��������s���V�F���X�N���v�g�ň����������Ă݂܂��傤�Bgreeting.sh�Ƃ������O�ŁA
#!/bin/sh echo "Hi, $1. I am $0." echo "Hi, $*. I am $0."
�Ƃ������e�̃t�@�C�������܂��Bchmod�R�}���h�ŁA���ڎ��s�ł���悤�ɂ��Ă����Ă��������B�ȉ��͂��̃V�F���X�N���v�g�̎��s��ł��B
$ ./greeting.sh tom Hi, tom. I am ./greeting.sh. Hi, tom. I am ./greeting.sh. $ ./greeting.sh tom joe Hi, tom. I am ./greeting.sh. Hi, tom joe. I am ./greeting.sh. $ sh greeting.sh tom joe Hi, tom. I am greeting.sh. Hi, tom joe. I am greeting.sh.
�@���̂Ƃ���A�V�F���X�N���v�g�ł́u$�v�Ŏn�܂镶�����ϐ��Ƃ��Ĉ����܂��B��萳�m�ɂ����ƁA������$�Ŏn�܂��Ă���ꍇ�͂��̕�����Ɋi�[���ꂽ�f�[�^�����o���Ēu�������܂��B�ł�����A�ϐ��Ƀf�[�^��������Ƃ���$���s�v�ł��B�Ⴆ�A
test=one echo $test
�Ƃ����V�F���X�N���v�g�����s����ƁA
$ sh var.sh one
�ƂȂ�܂��B
�@�܂��A�V�F���X�N���v�g�ł͊�{�I�ɕϐ�����Ƃ��Ĉ����܂��B�܂�A
test=1 test=$test+1 echo $test
�̎��s���ʂ́A
$ sh add.sh 1+1
�ƂȂ�܂��B
�@�ϐ��𐔒l�Ƃ��Ĉ��������Ƃ��́Adeclare�R�}���h�Ŏw�肵�܂��B
declare -i test test=1 test=$test+1 echo $test
�Ƃ����V�F���X�N���v�g�����s����ƁA
$ bash add2.sh 2
�ƁA���x�͐������Z���s�������ʂ��Ԃ��Ă��܂��B�u-i�v�ŁA�����l�Ƃ��ď������邱�Ƃ��w�肷��̂ł��B
�@�Ȃ��A�ϐ��ɉ����������Ă��Ȃ��ꍇ�́A��̕����Ԃ��Ă��܂��B
�@�O��A�t�@�C���̊g���q���������������������Ǝv���܂��B�����Ɏg�����p�^�[���}�b�`��4��ނ���A���ɔėp���̍������̂ł��B
�ϐ��̓��e�ɂ��āA�ŏ��̕����ƃp�^�[�����}�b�`������A�ł��Z����v���镔������菜�����c��̕�����Ԃ��B
�ϐ��̓��e�ɂ��āA�ŏ��̕����ƃp�^�[�����}�b�`������A�ł�������v���镔������菜�����c��̕�����Ԃ��B
�ϐ��̓��e�ɂ��āA�Ō�̕����ƃp�^�[�����}�b�`������A�ł��Z����v���镔������菜�����c��̕�����Ԃ��B
�ϐ��̓��e�ɂ��āA�Ō�̕����ƃp�^�[�����}�b�`������A�ł�������v���镔������菜�����c��̕�����Ԃ��B
�@�ϐ�testpath��/home/sekino/Linux/how.to.linux�Ƃ����l��ݒ肵�Ă����ƁA
$ echo ${testpath##/*/} how.to.linux $ echo ${testpath#/*/} sekino/Linux/how.to.linux $ echo ${testpath%%.*} /home/sekino/Linux/how $ echo ${testpath%.*} /home/sekino/Linux/how.to
�Ƃ��������ʂɂȂ�܂��B�܂��A�t�@�C���g���q��u��������Ƃ����ϓ_����́A
#!/bin/sh file=scan01.jpg echo ${file} echo ${file%jpg} echo ${file%jpg}png
�Ƃ����X�N���v�g�����s����ƕ�����₷���Ǝv���܂��B
Copyright © ITmedia, Inc. All Rights Reserved.