คำสั่งยูนิกส์ Unix Command ผ่าน SSH Secure Shell เบื้องต้น

คำสั่งยูนิกส์ Unix Command ผ่าน SSH Secure Shell เบื้องต้น

From TUMRAI [QuickNote]

(Redirected from Unix)
Jump to: navigation, search

Contents

คำสั่งพื้นฐานยูนิกส์(Unix) สำหรับ designer

software



Is

  • คำสั่งที่ใช้สำหรับแสดงแฟ้มข้อมูล มากจากคำว่า list รูป แบบคำสั่ง ls [option]
  • option ที่มักใช้กันใน ls คือ
    • -l จะแสดงผลลัพธ์แบบ Long Format ซึ่งจะแสดง Permission ของแฟ้มด้วย
    • -a จะแสดงแฟ้มข้อมูลทั้งหมด
    • -F จะแสดง / หลัง Directory และ * หลังแฟ้มข้อมูลที่ execute ได้
  • ตัวอย่างการใช้งาน
    • ls -l
    • ls -al
    • ls -F


Cd

  • คำสั่ง Change Directory ของระบบ Unix,Linux
  • รูบแบบการใช้งาน cd เคาะ space bar หนึ่งครั้งตามด้วย directory
  • ตัวอย่าง
    • cd etc [Enter] คือเข้าไปใน Directory etc
    • cd ..[Enter] เข้าไป Directory ในระดับนอกกว่าก directory ปัจจุบัน 1ชั้น

cp

  • คำสั่ง copy
  • รูปแบบ cp ชื่อที่จะcopy Folder ที่ใหม่หรือชื่อใหม่ของ file
  • ตัวอย่าง1 cp file.txt newfile.txt (กรณี copy เป็นชื่อใหม่ ให้ file อยู่ด้วยกันที่เดิม )
  • ตัวอย่าง2 cp file.txt /home (กรณี copy ไปไว้ที่ใหม่ ต้องระบุที่ให้ไป)
  • กรณีอื่นที่ใช้บ่อย 1 เช่น cp *.* somefolder ( copy ทุก file ไปไว้ folder ใหม่)
mkdir bk
cp -r * bk

Pwd

  • คำสั่งที่ใช้สำหรับแสดงว่าปัจจุบันอยู่ใน Directory อะไร ซึ่งจะแสดงออกมาเป็น path
  • ตัวอย่างการใช้ เช่น เมื่อสั่ง pwd แล้ว enter
  • ผลลัพท์ เช่น /home/demo/www/shop/content

File

  • ใน UNIX บางไฟล์จะไม่มีนามสกุลเพื่อใช้ระบุประเภทของแฟ้มข้อมูล ดังนั้นการหาประเภทของแฟ้มข้อมูลจะดูจาก Context ภายในของแฟ้ม ซึ่งคำสั่ง file จะทำการอ่าน Content และบอกประเภทของแฟ้มข้อมูลนั้นๆ
  • รูปแบบคำสั่ง file ตามด้วยชื่อ file
  • ตัวอย่าง file somefilename
  • ผลเช่น somefilename : HTML document text

Mv

  • คำสั่งที่ใช้สำหรับการย้ายแฟ้มข้อมูลและ Directory รวมถึงการเปลี่ยนชื่อด้วย (ในทำนองเดียวกับ dos) มาจากคำว่า move
  • รูปแบบคำสั่ง mv source target
  • ตัวอย่างการย้ายไฟล์เดียว mv filename.tar backup (ย้าย filename.tar ไปที่ โฟล์เดอร์ backup)
  • ตัวอย่างการย้าย mv *.tar backup (ย้ายทุกไฟล์ที่ นามสกุล tar ไปที่ โฟล์เดอร์ backup)
  • ตัวอย่างการย้าย mv *.* /somedir/backup (ย้ายทุกไฟล์ทุก นามสกุล ในโฟล์เดอร์ปัจจุบันไปที่ โฟล์เดอร์ backup)
  • ตัวอย่างการย้าย mv somedir/* des/backup (ย้ายทุกไฟล์ทุกโฟลเดอร์ใน somedir ไปที่ โฟล์เดอร์ des/backup)
  • mv * ../ (ย้ายทุกสิ่งออกไปนอก directory ปัจจุบัน ออกไปหนึ่งชั้น )
  • ตัวอย่างการเปลี่ยนชื่อ mv OldName.txt NewName.txt (เปลี่ยนจาก OldName.txt เป็น NewName.txt)

Mkdir

  • คำสั่งที่ใช้สำหรับการสร้าง directory มาจากคำว่า make directory
  • รูปแบบของคำสั่ง mkdir [option] [file]
  • โดย option ที่มักใช้กันใน mkdir คือ
    • -m จะทำการกำหนด Permissioin
  • ตัวอย่าง
    • mkdir home
    • mkdir -m 777 newdirectory

Rm

  • คำสั่งที่ใช้สำหรับลบแฟ้มข้อมูล (ในทำนองเดียวกับ del) มาจากคำว่า remove
  • รูปแบบการใช้งาน rm [option]... [file]...โดย option ที่มักใช้กันใน rm คือ
    • -r ทำการลบข้อมูลใน directory ย่อยทั่งหมด
    • -i โปรแกรมจะถามยืนยันก่อนทำการลบ
    • -f โปรแกรมจะลบข้อมูลทันที โดยไม่ถามยืนยันก่อน
  • ตัวอย่าง
    • rm -r test (ลบโฟล์เดอร์ test และหากมี โฟล์เดอร์อะไรอยู่ใน test ก็ลบให้เกลี้ยงไปพร้อมกัน)
    • rm -r -f inshop (ลบโฟล์เดอร์ inshop และหากมี ไฟล์หรือโฟล์เดอร์อะไรอยู่ในนั้น ก็ลบให้เกลี้ยง และไม่ต้องถามกวนใจ)
    • rm test.doc (ลบไฟล์ test.doc)
    • rm *.txt ลบทุกไฟล์ที่เป็นนามสกุล txt
    • rm data* ลบทุกไฟล์ที่ชื่อไฟล์เริ่มด้วยคำว่า data
    • rm *data ลบทุกไฟล์ที่ชื่อไฟล์ลงท้ายด้วยคำว่า data
    • rm *data* ลบทุกไฟล์ที่มีคำว่า data
  • ลบ บางไฟล์ที่มีคำตามที่ระบุ
rm *x150*
rm *x300*
rm *300x*
rm *197x*
rm *x400*
rm *x1024*
rm *1024x*
rm *x163*
rm *163x*
ls | wc -l

ค้นหาและลบ

find . -type f -name '*.phpx' -delete

Chown

  • คำสั่ง Change Owner ของระบบ Unix,Linux (เป็นการเปลี่ยนเจ้าของไฟล์)
  • รูบแบบการใช้งาน chown [ชื่อเจ้าของไฟล์] (ชื่อFile)
  • ตัวอย่าง
    • chown user1 filename คือเปลี่ยนเจ้าของไฟล์ชื่อ filename เป็น User1
    • chown -R user1 Directory คือเปลี่ยนทั้งเจ้าของไฟล์และกลุ่มไปพร้อมกันทุกไฟล์ใน Sub Directory (Sub Folder)
    • sudo chown -R www-data:www-data /path/to/WordPress/Installation

chgrp

  • คำสั่ง Change Group ของระบบ Unix,Linux (เป็นการเปลี่ยนกลุ่มเจ้าของไฟล์)
  • รูปแบบการใช้งาน chgrp [ชื่อกลุ่ม] (ชื่อ File หรือชื่อ Folder)
  • ตัวอย่าง
    • chgrp root /root/* เปลี่ยน Group ให้กับไฟล์ทุกไฟล์ในไดเรคทอรี่ /root ให้เป็น Group root
    • chgrp -R root /root เปลี่ยน Group ให้กับไฟล์ทุกไฟล์ทุกไดเรคทอรี่ /root ให้เป็น Group root

Chmod

  • คำสั่งกำหนดสิทธิในการเข้าถึงไฟล์
  • รูบแบบการใช้งาน chmod [สิทธิ] (ชื่อFile หรือ Folder)
  • สิทธิ เช่น 777, 755
  • ตัวอย่างการใช้ เช่น chmod 777 uploads_folder
  • -R สำหรับเปลี่ยนทั้ง folder และ sub folder
    • เช่น chmod -R 777 uploads_folder

tar

ใช้สำหรับ รวมไฟล์ย่อยให้เป็นไฟล์ Packet คล้ายๆกับการ zip หลายๆไฟล์ให้เป็นไฟล์เดียวแต่ขนาดไฟล์ไม่ได้ลดลงอย่างการ zip โดยไฟล์ output ที่ได้จะตั้งชื่อเป็น filename.tar หรือการแตกไฟล์ packet จาก filename.tar ให้เป็นไฟล์ย่อยมักจะใช้คู่กับ gzip หรือ compress เพื่อทำการลดขนาด packet ให้เล็กลง

รูปแบบการใช้

  • tar -option output input
  • -option เช่น -cvf , -xvf
  • output คือ ไฟล์.tar ที่จะเกิดขึ้น
  • input คือ ไฟล์หรือกลุ่มไฟล์หรือ directory ที่จะรวมกัน
  • ตัวอย่าง cvf (รวมไฟล์)
    • tar -cvf Output_file.tar /home/myhome/*
      • Option -cvf ใช้สำหรับการรวมไฟล์ย่อยไปสู่ไฟล์ .tar จากตัวอย่าง รวมไฟล์ทุกไฟล์ที่อยู่ใน /home/myhome/ เข้าสู่ไฟล์ชื่อ Output_file.tar
  • ตัวอย่าง -xvf (แตกไฟล์)
    • tar -xvf filename.tar
    • Option -xvf ใช้แตกไฟล์ .tar เป็นไฟล์ย่อยๆ โดยจะแตกลง ณ current directory

except

tar -cvf createthis.tar --exclude='*.tar' folder/*


.tgz

tar -xzpf x-cart.tgz

find

ค้นหา ไฟล์ที่ต้องการ

  • find /var -name "*.MYD" -print
find . -name 'verify.php'
find   -name "*607f706d*" -print

kill

ค้น Process ID ที่ต้องการ kill เช่น ใช้คำสั่ง top เพื่ดู Process ที่ใช้งานมากผิดปกติ เพื่อพบให้แก้ไขไฟล์นั้นตามความเหมาะสมแม้จะลบแต่ process จะยังทำงานอยู่ เมื่อได้ PID ของ Process หยุดด้วยคำสั่ง kill เช่น kill PID OR $ sudo kill PID

    • kill 5623

หาข้อความในไฟล์

find / -type f -exec grep -H 'text-to-find-here' {} \;

find /public_html/londonhouse/ -type f -exec grep -H '$ugefusag="create_";global $iforub; $iforub' {} \;

find   -type f -exec grep -H '$ugefusag="create_";global $iforub; $iforub' {} \;

นับ

  • ls | wc -l นับจำนวน ไพล์ใน folder
ls | wc -l
  • find . -type f | wc -l นับจำนวน ไพล์ใน folder และ sub
find . -type f | wc -l
  • นับ file ใน folder หลายระดับชั้น แจงแยก folder
find -maxdepth 1 -type d | while read -r dir; do printf "%s:\t" "$dir"; find "$dir" | wc -l; done
find -maxdepth 3 -type d | while read -r dir; do printf "%s:\t" "$dir"; find "$dir" | wc -l; done


ค้นหา
find . -type f -name '*.phpx' 
ค้นหาไฟล์และลบ
find . -type f -name '*.phpx' -delete

ปิดเครื่อง หรือ shutdown

  • shutdown -h now
  • init 0
  • halt
  • poweroff

คำสั่งที่ใช้ในการ Reboot เครื่อง

  • reboot
  • init 6
  • shutdown -r now

reboot cpanel/whm in ssh

  • /etc/init.d/cpanel restart


restart

sudo service SERVICENAME restart
sudo service mysql restart
sudo service mysql stop;
sudo service mysql start;
sudo service mysql status
sudo service serverpilot-agent restart
sudo service nginx-sp restart

view usage

top
htop  
free -m
cat /proc/meminfo
vmstat -s

Disk Usage

  • หาขนาดไฟล์ใน folder

แสดงเฉพาะในโฟล์เดอร์ปัจจุบัน

    • du -sh *

แสดงทุกโฟล์เดอร์

    • du -h
    • du -sh

เรียงตามขนาด ใหญ่อยู่ท้าย

ขนาดรวมทั้งหมด

df -h

ZIP

  • ติดตั้ง sudo apt-get install zip unzip
  • zip -r backup.zip data/*
  • unzip backup.zip

grep

ค้นคำ
grep -r "visitorTracker_isMob" Foldername


wget

wget เป็นโปรแกรมที่ใช้เพื่อดาวน์โหลดไฟล์จากเว็บไซต์โดยรันคำสั่ง wget ตามด้วย URL ที่ต้องการดาวน์โหลด

wget www.dllc.com/file.tar 
wget "www.dllc.com/file.tar"

ดาวน์โหลดครั้งแรกยังไม่ครบ ต้องการดาวน์โหลดต่อ ใช้ -c

wget -c www.dllc.com/file.tar

wget windows

DigitalOcean


Links