สอบถามการทำไฟล์ .sh

สวัสดีครับ

พอมีโอกาศไหมที่ผมสามารถทำไฟล์ .sh

ผมแค่อยากเขียนไฟล์สักไฟล์ไว้เป็นความรู้ โดยให้พี่ๆช่วยหน่อยครับมีหัวข้อดังนี้

wget http://xxxx.com/xx.rpm

rpm -i xx.rpm --nodeps

เวลาผมอยากใช้ก็เช่น ./files.sh ก็ให้มันโหลดแล้วลงอัตโนมัติตามด้วยข้อ

ขอบคุณมากๆครับ

ก็พิมพ์คำสั่งที่คุณต้องการให้มันทำงานไปในไฟล์ .sh ได้เลยครับ

แล้วสั่ง chmod +x files.sh

แค่นี้แหละครับ



rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

yum update -y

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

cd /tmp

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm

yum install ntp httpd lighttpd mysql-server php php-mysql php-mbstring php-mcrypt rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool-ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel -y

yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql -y

cd /etc/yum.repos.d/

wget http://centos.karan.org/kbsingh-CentOS-Extras.repo

yum --enablerepo=kbs-CentOS-Testing install install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mbstring php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel -y

setenforce 0

reboot


แบบด้านบนครับ ถูกไหม ลองเอาไปใช้ดูครับ

ไฟล์ .sh เป็นไฟล์ command shell (เหมือน เขียน batch file บน dos) และ command shell มันก็เป็นภาษาๆหนึ่ง และ shell มันก็มีหลากหลาย shell เช่นกัน อาทิเช่น C Shell, Born Shell etc.

ด้าน permission file นั้น shell file ต้องการ mode file เป็น exec mod ก็เปลี่ยน file mode จากที่เราเขียน text file เพิ่ม +X เข้าไปก็ run shell ได้แล้วครับ

ขอบคุณพี่ๆทุกท่านมากเลยครับ ขอบคุณครับ

บรรทัดแรกให้ระบุ shell ที่ต้องการใช้โดยใส่ #! ไว้ข้างหน้า เช่น

#!/bin/sh

หรือ

#!/bin/bash

เป็นต้น

ส่วนบรรทัดต่อๆมาก็ใส่คำสั่งต่างๆที่ต้องการสั่งจะสั่งอะไรก็พิมพ์เข้าไป ที่สำคัญดูเรื่อง path ด้วย

ตัวอย่าง

#!/bin/sh

cd /root

wget -O xx.rpm http://www.xxx.com/xx.rpm

chmod +x xx.rpm

./xx.rpm


จริงๆแล้ว shell มันเป็นภาษาๆนึง ใช้ if for while … ได้ด้วย