คำสั่ง sed: การแทนที่สตริง การลบบรรทัด และการใช้ตัวเลือก -i

สภาพแวดล้อมทดสอบตระกูล RHELAlmaLinux 9.8บัญชี rootตรวจสอบเมื่อ 2026-10-28

คำสั่ง sed คือเครื่องมือ Linux ที่อ่านไฟล์ทีละบรรทัดแล้วดำเนินการแทนที่ ลบ และแทรก คุณจึงแก้ไขค่าในไฟล์การตั้งค่าได้โดยไม่ต้องเปิดโปรแกรมแก้ไข เมื่อเรารัน sed กับสำเนาของ wp-config.php ของ WordPress บนเซิร์ฟเวอร์ AlmaLinux 9 ก็สามารถเปลี่ยนชื่อฐานข้อมูลได้โดยเก็บไฟล์ต้นฉบับไว้ด้วย -i.bak

ข้อความแสดงข้อผิดพลาดในบทความนี้เป็นข้อความตามจริงที่แสดงภายใต้ locale ภาษาอังกฤษ

1️⃣ วิธีใช้พื้นฐานของคำสั่ง sed และการแทนที่ด้วย s

คำสั่ง s ที่ใช้บ่อยที่สุดจะแทนที่สตริงในรูปแบบ [s/สตริงที่ค้นหา/สตริงใหม่/] โดยแทนที่เฉพาะรายการแรกที่พบในแต่ละบรรทัด

echo 'http://example.com http://example.com/blog' | sed 's/http:/https:/'
https://example.com http://example.com/blog

ถ้าต้องการแทนที่ทุกรายการในบรรทัด ให้ใส่แฟล็ก g ต่อท้าย

echo 'http://example.com http://example.com/blog' | sed 's/http:/https:/g'
https://example.com https://example.com/blog

ถ้าใส่ชื่อไฟล์ไว้ท้ายคำสั่ง sed จะอ่านไฟล์นั้นแล้วแสดงผลที่แทนที่แล้ว ในสำเนาที่คัดลอก wp-config-sample.php ของ WordPress เป็น wp-config.php เราเปลี่ยนค่า DB_USER และตรวจเฉพาะบรรทัดนั้นด้วย grep

sed 's/username_here/wp_user/' wp-config.php | grep DB_USER
define( 'DB_USER', 'wp_user' );

เมื่อเห็นค่าในเอาต์พุตเปลี่ยนไปก็อาจเข้าใจว่าไฟล์เปลี่ยนด้วย แต่ถ้ารัน sed โดยไม่มีตัวเลือก จะแสดงผลบนหน้าจออย่างเดียวและไม่แตะไฟล์ต้นฉบับ เมื่อค้นบรรทัดเดิมในไฟล์อีกครั้ง ค่าเดิมก็ยังอยู่

grep DB_USER wp-config.php
define( 'DB_USER', 'username_here' );

ถ้าต้องการเปลี่ยนไฟล์ต้นฉบับด้วย ให้ใช้ตัวเลือก -i ในหัวข้อ 4️⃣

2️⃣ การเลือกบรรทัดใน sed ด้วยหมายเลขบรรทัดและแพตเทิร์น (-n, p)

คำสั่ง s ที่ไม่มีแอดเดรสจะทำงานกับทุกบรรทัด ถ้าต้องการจัดการเฉพาะบางบรรทัด ให้เขียนหมายเลขบรรทัดหรือแพตเทิร์นเป็นแอดเดรสไว้หน้าคำสั่ง -n ปิดการแสดงผลอัตโนมัติ และ p แสดงบรรทัดที่เลือก เมื่อใช้ร่วมกันจะเห็นเฉพาะบรรทัดที่ 23

sed -n '23p' wp-config.php
define( 'DB_NAME', 'database_name_here' );

ถ้าคั่นหมายเลขบรรทัดสองตัวด้วยจุลภาคจะได้ช่วงนั้น บรรทัดที่ 23 ถึง 32 คือส่วนที่มีการตั้งค่าชื่อฐานข้อมูล ผู้ใช้ รหัสผ่าน และโฮสต์

sed -n '23,32p' wp-config.php
define( 'DB_NAME', 'database_name_here' );

/** Database username */
define( 'DB_USER', 'username_here' );

/** Database password */
define( 'DB_PASSWORD', 'password_here' );

/** Database hostname */
define( 'DB_HOST', 'localhost' );

ถ้าเขียนแพตเทิร์นระหว่างเครื่องหมายทับแทนหมายเลขบรรทัด จะเลือกทุกบรรทัดที่มีแพตเทิร์นนั้น

sed -n '/DB_/p' wp-config.php
define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );

คำสั่ง [=] แสดงหมายเลขของบรรทัดที่เลือก แอดเดรส $ หมายถึงบรรทัดสุดท้าย จึงใช้ [$=] ดูจำนวนบรรทัดทั้งหมดของไฟล์ได้

sed -n '/DB_HOST/=' wp-config.php
32
sed -n '$=' wp-config.php
102

แอดเดรสใส่หน้าคำสั่ง s ได้เช่นกัน ด้านล่างคือผลการเปลี่ยน localhost เฉพาะบรรทัดที่ 32 และแสดงเฉพาะบรรทัดที่เปลี่ยนด้วยแฟล็ก p

sed -n '32s/localhost/127.0.0.1/p' wp-config.php
define( 'DB_HOST', '127.0.0.1' );

เมื่อรัน p โดยไม่มี -n บรรทัดที่เลือกจะแสดงอีกครั้ง sed อ่านทีละบรรทัดเข้า pattern space รันคำสั่ง แล้วแสดง pattern space โดยอัตโนมัติ บรรทัดที่ 2 ที่ p แสดงไปแล้วจึงปรากฏอีกครั้งจากการแสดงผลอัตโนมัติ

sed '2p' wp-config.php | head -n 4
<?php
/**
/**
 * The base configuration for WordPress

วิธีอ่านและประมวลผลทีละบรรทัดนี้เหมือนสายพานในโรงงานที่วางชิ้นส่วนทีละชิ้นบนโต๊ะงาน แปรรูปแล้วจึงไปยังชิ้นถัดไป

คุณเปรียบเทียบได้ทีละขั้นในแผนภาพด้านล่างว่าแต่ละคำสั่งแสดงอะไรในแต่ละบรรทัด

🧭 pattern space ของ sed และการแสดงผลอัตโนมัติ: p, d ที่บรรทัด 2
แผนภาพอธิบาย
⚙️ คำสั่ง
$ sed '2p'-n '2p''2d' wp-config.php
บรรทัดที่อ่านการรันคำสั่งและเอาต์พุต
บรรทัด 1 → pattern space<?php
➜
ไม่ตรงกับแอดเดรส 2: ไม่มีคำสั่งแสดงผลอัตโนมัติ 1 ครั้งไม่มีเอาต์พุตเพราะ -n
บรรทัด 2 → pattern space/**
➜
ตรงกับแอดเดรส 2: รัน pตรงกับแอดเดรส 2: รัน dp 1 ครั้ง + อัตโนมัติ 1 ครั้งแสดงด้วย p 1 ครั้งเท่านั้นล้าง pattern space แล้วไปบรรทัดถัดไป
บรรทัด 3 → pattern space * The base configuration for WordPress
➜
ไม่ตรงกับแอดเดรส 2: ไม่มีคำสั่งแสดงผลอัตโนมัติ 1 ครั้งไม่มีเอาต์พุตเพราะ -n
🖥️ สิ่งที่แสดงบนหน้าจอ (บรรทัด 1~3)
<?php/**/** * The base configuration for WordPress
p แสดง pattern space อีกครั้ง ถ้าไม่มี -n บรรทัดที่ 2 จึงแสดงสองครั้ง
-n ปิดการแสดงผลอัตโนมัติ จึงแสดงเฉพาะบรรทัดที่ 2 ที่เลือกด้วย p หนึ่งครั้ง
d ล้าง pattern space แล้วไปบรรทัดถัดไป บรรทัดที่ 2 จึงไม่ถูกแสดงอัตโนมัติ

3️⃣ การลบและแทรกบรรทัดด้วยคำสั่ง sed (d, i, a)

d ลบบรรทัดที่เลือก ถ้าต้องการดูตัวอย่างการตั้งค่า nginx ด้านล่างโดยไม่มีบรรทัดคอมเมนต์ ให้เลือกบรรทัดที่ขึ้นต้นด้วย # หรือมีเพียงช่องว่างหน้า # ด้วยแพตเทิร์น [^ *#]

cat example.conf
# example.com
server {
    listen 80;
    server_name example.com www.example.com;

    # document root
    root /var/www/example.com;
    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}
sed '/^ *#/d' example.conf
server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/example.com;
    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}

ถ้าเชื่อมคำสั่งด้วยเครื่องหมายอัฒภาค จะลบ [^$] ซึ่งหมายถึงบรรทัดว่างไปด้วย บรรทัดว่างสองบรรทัดที่เหลือหลังลบคอมเมนต์หายไป เหลือเฉพาะบรรทัดการตั้งค่า

sed '/^ *#/d; /^$/d' example.conf
server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com;
    index index.php index.html;
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}

i แทรกข้อความหน้าบรรทัดที่เลือก ส่วน a แทรกหลังบรรทัดที่เลือก ผลของการแทรกคอมเมนต์หนึ่งบรรทัดหน้าบรรทัดที่ 1 เป็นดังนี้

sed '1i # managed by sed' example.conf | head -n 3
# managed by sed
# example.com
server {

อาจเข้าใจว่าถ้าเขียนข้อความที่ย่อหน้าไว้หลัง a การย่อหน้าจะเข้าไปด้วย แต่ GNU sed จะข้ามช่องว่างหลัง a แล้วแทรกเฉพาะข้อความ

sed '/index index.php/a    client_max_body_size 64M;' example.conf
# example.com
server {
    listen 80;
    server_name example.com www.example.com;

    # document root
    root /var/www/example.com;
    index index.php index.html;
client_max_body_size 64M;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}

ถ้าต้องการคงการย่อหน้า ให้ใส่แบ็กสแลชหลัง a ตั้งแต่ช่องว่างหลังแบ็กสแลชจะเข้าไปเป็นข้อความทั้งหมด

sed '/index index.php/a\    client_max_body_size 64M;' example.conf
# example.com
server {
    listen 80;
    server_name example.com www.example.com;

    # document root
    root /var/www/example.com;
    index index.php index.html;
    client_max_body_size 64M;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}

c แทนที่บรรทัดที่เลือกทั้งบรรทัด ด้านล่างคือสี่บรรทัดแรกของผลการเปลี่ยนบรรทัด listen 80 เป็น 8080

sed '/listen 80;/c\    listen 8080;' example.conf | head -n 4
# example.com
server {
    listen 8080;
    server_name example.com www.example.com;

4️⃣ การแก้ไขไฟล์โดยตรงด้วย sed -i และชื่อไฟล์สำรอง

-i บันทึกผลลงไฟล์ต้นฉบับแทนการแสดงบนหน้าจอ ข้อความที่เขียนติดหลัง -i จะต่อท้ายชื่อไฟล์สำรอง wp-config.php และไฟล์อื่นที่เว็บไซต์อ่าน ควรแก้ไขด้วย -i.bak เพื่อเก็บไฟล์ต้นฉบับไว้

cp wp-config-sample.php wp-config.php
sed -i.bak 's/database_name_here/wordpress_db/' wp-config.php

เมื่อรันด้วย -i จะไม่มีอะไรแสดงบนหน้าจอ จึงตรวจไฟล์ด้วย ls -l

ls -l wp-config.php*
-rw-r--r-- 1 root root 3333 Oct 28 15:13 wp-config.php
-rw-r--r-- 1 root root 3339 Oct 28 15:13 wp-config.php.bak

ไฟล์ที่แก้ไขและไฟล์ .bak อยู่คู่กัน ขนาดเล็กลง 6 ไบต์เพราะ database_name_here กลายเป็น wordpress_db ที่สั้นกว่า เมื่อเปรียบเทียบสองไฟล์ด้วย diff จะเห็นเฉพาะบรรทัดที่เปลี่ยน

diff wp-config.php.bak wp-config.php
23c23
< define( 'DB_NAME', 'database_name_here' );
---
> define( 'DB_NAME', 'wordpress_db' );

บรรทัดที่เปลี่ยนคือบรรทัด DB_NAME บรรทัดเดียวที่บรรทัดที่ 23

ถ้ามีหลายค่าที่ต้องเปลี่ยน ให้เชื่อมสคริปต์ด้วย -e แล้วรันครั้งเดียว

sed -i -e 's/username_here/wp_user/' -e 's/password_here/wp_pass/' wp-config.php
grep -n -e DB_USER -e DB_PASSWORD wp-config.php
26:define( 'DB_USER', 'wp_user' );
29:define( 'DB_PASSWORD', 'wp_pass' );

ถ้าเขียน -i กับ -e ติดกันแบบ [-ie] ตัว e จะถูกอ่านเป็นชื่อสำรองด้วย และเกิดไฟล์ wp-config.phpe ดังด้านล่าง

sed -ie 's/127.0.0.1/localhost/' wp-config.php
ls wp-config.php*
wp-config.php
wp-config.php.bak
wp-config.phpe

-i เขียนเนื้อหาที่แก้ไขลงไฟล์ใหม่แล้วเปลี่ยนชื่อเป็นชื่อเดิม หมายเลข inode ของไฟล์จึงต่างกันก่อนและหลังรัน

ls -i wp-config.php
207618887 wp-config.php
sed -i 's/localhost/127.0.0.1/' wp-config.php
ls -i wp-config.php
207618883 wp-config.php

หมายเลข inode ที่เคยเป็น 207618887 ก่อนรันเปลี่ยนเป็น 207618883

ถ้าไม่มีไฟล์หรือไม่ได้ใส่ชื่อไฟล์ จะจบด้วยข้อผิดพลาดด้านล่างและไม่มีไฟล์ใดเปลี่ยน

sed -i 's/x/y/' no-such.php
sed: can't read no-such.php: No such file or directory
sed -i 's/x/y/'
sed: no input files

5️⃣ นิพจน์ปกติของ sed การเปลี่ยนตัวคั่น และตัวเลือก

🔲 นิพจน์ปกติและการเปลี่ยนตัวคั่น

เมื่อเปลี่ยนค่าที่มีเครื่องหมายทับ เช่น พาธ ตัวคั่นของคำสั่ง s จะปนกับเครื่องหมายทับในค่า จึงต้องใส่แบ็กสแลชหน้าเครื่องหมายทับทุกตัวในค่า

sed -n 's/\/var\/www\/example.com/\/srv\/www\/example.com/p' example.conf
    root /srv/www/example.com;

อักขระที่อยู่ถัดจาก s จะเป็นตัวคั่น ถ้าเปลี่ยนเป็น | ซึ่งไม่มีในค่า ก็จะได้ผลเดียวกันโดยไม่ต้องใช้แบ็กสแลช

sed -n 's|/var/www/example.com|/srv/www/example.com|p' example.conf
    root /srv/www/example.com;

จุด (.) ในแพตเทิร์นตรงกับอักขระใดก็ได้หนึ่งตัว ด้านล่างคือผลของแพตเทิร์นที่ค้นหา example.com แต่เปลี่ยน exampleXcom ไปด้วย

echo 'exampleXcom example.com' | sed 's/example.com/test.org/g'
test.org test.org

ถ้าต้องการค้นหาจุดตามตัวอักษร ให้ใส่แบ็กสแลชไว้หน้าจุด

echo 'exampleXcom example.com' | sed 's/example\.com/test.org/g'
exampleXcom test.org

ส่วนที่ครอบด้วยวงเล็บเรียกกลับได้ในสตริงใหม่ด้วย [\1] ถ้าใส่ -E จะใช้วงเล็บและ + ได้โดยไม่ต้องมีแบ็กสแลช ด้านล่างคือผลที่คงตัวเลขหลัง listen และเพิ่ม default_server

sed -nE 's/listen ([0-9]+);/listen \1 default_server;/p' example.conf
    listen 80 default_server;

ถ้ารันสคริปต์เดียวกันโดยไม่มี -E วงเล็บจะถูกอ่านเป็นตัวอักษร และเกิดข้อผิดพลาดว่าไม่มีกลุ่มให้เรียกกลับ ถ้าจะใช้โดยไม่มี -E ให้ใส่แบ็กสแลชที่วงเล็บและ +

sed -n 's/listen ([0-9]+);/listen \1 default_server;/p' example.conf
sed: -e expression #1, char 46: invalid reference \1 on `s' command's RHS
sed -n 's/listen \([0-9]\+\);/listen \1 default_server;/p' example.conf
    listen 80 default_server;

[&] ในสตริงใหม่หมายถึงข้อความทั้งหมดที่ตรงกับแพตเทิร์น จึงใส่ # หน้าส่วนที่ตรงเพื่อทำให้บรรทัดนั้นเป็นคอมเมนต์ได้

sed -n 's/server_name .*;/# &/p' example.conf
    # server_name example.com www.example.com;

🔲 ตัวเลือกของคำสั่ง sed

📌 ตัวเลือกหลัก: ผลที่รันในบทความนี้

ตัวเลือกหน้าที่ผลที่เห็นในบทความนี้
-nปิดการแสดงผลอัตโนมัติและแสดงเฉพาะบรรทัดที่เลือกด้วย psed -n '23p' แสดงเฉพาะบรรทัดที่ 23 ถ้าไม่มี -n 2p จะแสดงบรรทัดที่ 2 สองครั้ง
-iบันทึกผลลงไฟล์ต้นฉบับแทนหน้าจอ (ข้อความที่ติดหลังจะต่อท้ายชื่อสำรอง)-i.bak สร้าง wp-config.php.bak และหมายเลข inode เปลี่ยนหลังรัน
-eเชื่อมหลายสคริปต์แล้วรันครั้งเดียวDB_USER และ DB_PASSWORD เปลี่ยนพร้อมกัน ถ้าเขียนติดกันเป็น -ie จะเกิดไฟล์สำรอง wp-config.phpe
-Eใช้นิพจน์ปกติแบบขยาย (ไม่ต้องใส่แบ็กสแลชที่วงเล็บและ +)แสดง listen 80 default_server; ส่วนสคริปต์เดียวกันที่ไม่มี -E เกิดข้อผิดพลาด [invalid reference]
--follow-symlinksใช้ร่วมกับ -i เพื่อแก้ไขไฟล์ต้นฉบับที่ลิงก์ชี้อยู่ถ้าไม่ใส่ จะเกิดไฟล์ปกติแทนลิงก์และต้นฉบับคงเดิม ถ้าใส่ ค่าในต้นฉบับจะเปลี่ยน

📎 ตัวเลือกอื่น: ตามคู่มือทางการ

ตัวเลือกหน้าที่
-fอ่านสคริปต์จากไฟล์แล้วรัน
-rนิพจน์ปกติแบบขยายเหมือน -E (พกพาได้ดีกว่าคือ -E)
-sประมวลผลแต่ละไฟล์แยกกันแทนการต่อเป็นสตรีมเดียว
-zแบ่งบรรทัดด้วยอักขระ null แทนการขึ้นบรรทัดใหม่
-uอ่านอินพุตทีละน้อยและส่งเอาต์พุตบ่อยขึ้น
--posixปิดส่วนขยาย GNU ทั้งหมด
--debugแสดงขั้นตอนการทำงานแบบละเอียด

🔲 ตัวจำลองคำสั่ง sed

โฟลเดอร์ทำงานของตัวจำลองด้านล่างมีสำเนา wp-config.php และ example.conf คุณพิมพ์คำสั่งที่ผ่านมาได้เอง และตรวจไฟล์ที่เปลี่ยนด้วย -i ได้ด้วย ls -l และ diff

ตัวจำลองคำสั่ง sedGNU sed
[root@server work]#
ใช้ปุ่ม ↑↓ บนแป้นพิมพ์เพื่อเรียกคำสั่งที่พิมพ์ไว้ก่อนหน้ากลับมา

🔢 FAQ & เนื้อหาแนะนำ

wp-config-sample.php ของ WordPress ลงท้ายบรรทัดด้วย CRLF จึงมี [\r] ที่มองไม่เห็นอยู่หน้าท้ายบรรทัด [/false );$/] จึงไม่แสดงบรรทัดใดเลย ส่วนในสำเนาที่ลบ [\r] ด้วย [s/\r$//] แพตเทิร์นเดียวกันพบบรรทัด WP_DEBUG

-i สร้างไฟล์ปกติใหม่แทนลิงก์แล้วบันทึกที่นั่น ต้นฉบับที่ลิงก์ชี้อยู่จึงไม่เปลี่ยน ถ้าต้องการแก้ไขไฟล์ต้นฉบับ ให้ระบุ [--follow-symlinks] ด้วย กรณีนี้ลิงก์ยังอยู่และค่าในต้นฉบับเปลี่ยน

แม้ตัวแปรที่ตั้งด้วย NEW=wp_user ถ้าเขียนในเครื่องหมายคำพูดเดี่ยว เชลล์จะไม่แทนค่า [$NEW] จึงเข้าไปตามตัวอักษร เมื่อครอบสคริปต์ด้วยเครื่องหมายคำพูดคู่ เชลล์จะแทนค่าตัวแปรก่อน และ wp_user เข้าไปแทน [$NEW]

🧭 เนื้อหาคำสั่งข้อความแนะนำ 9 บทความ · 2 อ้างอิง
🗂️ คำสั่งดู · แก้ไขข้อความ
📄 คำสั่ง grep 📄 คำสั่ง sort 📄 คำสั่ง uniq 📄 คำสั่ง tee 📄 คำสั่ง sed
📄 คำสั่ง cat 📄 คำสั่ง less 📄 คำสั่ง head · tail 📄 คำสั่ง vi · vim
อินเทอร์เฟซบรรทัดคำสั่งของ Linux (Linux command line Interface-CLI)
Linux · ข้อความ
คำสั่ง grep ของ Linux
คำสั่ง grep ของ Linux ใช้ค้นหาสตริงในไฟล์ข้อความและไฟล์ ASCII เช่น ไฟล์ล็อก และมักใช้ร่วมกับคำสั่ง tail และ find ผ่านไปป์ (|)
อ่านบทความ →เนื้อหาปัจจุบัน
อินเทอร์เฟซบรรทัดคำสั่งของ Linux (Linux command line Interface-CLI)
Linux · ข้อความ
คำสั่ง sort ของ Linux: การเรียงไฟล์
คำสั่ง sort ของ Linux ซึ่งชื่อมีความหมายว่าประเภทหรือการจัดกลุ่ม ใช้เรียงเนื้อหา (เรกคอร์ด) ของไฟล์ ASCII
อ่านบทความ →เนื้อหาปัจจุบัน
อินเทอร์เฟซบรรทัดคำสั่งของ Linux (Linux command line Interface-CLI)
Linux · ข้อความ
คำสั่ง uniq ของ Linux
คำสั่ง uniq ของ Linux ย่อมาจาก “unique” ใช้ลบบรรทัดซ้ำในไฟล์ข้อความและแสดงเพียงบรรทัดเดียว
อ่านบทความ →เนื้อหาปัจจุบัน
อินเทอร์เฟซบรรทัดคำสั่งของ Linux (Linux command line Interface-CLI)
Linux · ข้อความ
คำสั่ง tee ของ Linux
คำสั่ง tee ของ Linux ได้ชื่อจากข้อต่อท่อในงานประปา
อ่านบทความ →เนื้อหาปัจจุบัน
แผนภาพอธิบาย pattern space และการแสดงผลอัตโนมัติของคำสั่ง sed: 2p ทำให้บรรทัดที่ 2 แสดงสองครั้ง
Linux · ข้อความ
คำสั่ง sed: การแทนที่สตริง การลบบรรทัด และการใช้ตัวเลือก -i
คำสั่ง sed คือเครื่องมือ Linux ที่อ่านไฟล์ทีละบรรทัดแล้วดำเนินการแทนที่ ลบ และแทรก คุณจึงแก้ไขค่าในไฟล์การตั้งค่าได้โดยไม่ต้องเปิดโปรแกรมแก้ไข
อ่านบทความ →เนื้อหาปัจจุบัน
linux Free Software
Linux · ข้อความ
คำสั่ง cat ของ Linux
“คำสั่ง cat” ของ Linux ที่เรียบง่ายใช้แสดงไฟล์ข้อความ เพียงเขียนชื่อไฟล์หลังคำสั่งก็จะส่งไปยังเอาต์พุตมาตรฐาน (Standard Output)
อ่านบทความ →เนื้อหาปัจจุบัน
อินเทอร์เฟซบรรทัดคำสั่งของ Linux (Linux command line Interface-CLI)
Linux · ข้อความ
วิธีใช้คำสั่ง less ของ Linux
คำสั่ง less ของ Linux ใช้ดูไฟล์ข้อความ
อ่านบทความ →เนื้อหาปัจจุบัน
คำสั่ง head ของ Linux
Linux · ข้อความ
คำสั่ง head และคำสั่ง tail ของ Linux
คำสั่ง head ของ Linux แสดง 10 บรรทัดแรกของไฟล์ ส่วนคำสั่ง tail แสดง 10 บรรทัดสุดท้าย
อ่านบทความ →เนื้อหาปัจจุบัน
3 โหมดของคำสั่ง vi บน Linux
Linux · ข้อความ
สรุปคำสั่ง vi ของ Linux | 3 โหมดของ Vim และโหมด Visual
เปิด vi แล้วพิมพ์อะไรก็ไม่ขึ้น หรือไม่รู้วิธีออกจนต้องปิดหน้าต่างทิ้ง เป็นเรื่องที่คนเพิ่งเริ่มใช้เซิร์ฟเวอร์ต้องเจอสักครั้ง
อ่านบทความ →เนื้อหาปัจจุบัน

ℹ️ ประกาศเรื่องลิงก์แอฟฟิลิเอต
เนื้อหาของเว็บไซต์นี้มีลิงก์แอฟฟิลิเอต หากผู้เข้าชมซื้อสินค้าหรือบริการผ่านลิงก์เหล่านี้ เว็บไซต์นี้จะได้รับค่าคอมมิชชันจากผู้ขาย ในกระบวนการนี้ ราคาที่ผู้ซื้อจ่าย(ราคาจะลดลงเมื่อมีโปรโมชัน↓)จะไม่สูงขึ้นแต่อย่างใด ราคา ส่วนลด และข้อมูลสต็อกที่แสดงเป็นข้อมูล ณ เวลาที่เขียนและอาจต่างจากความเป็นจริง โปรดตรวจสอบกับผู้ขายอีกครั้งก่อนซื้อ การเลือกและการประเมินสินค้าเขียนตามเกณฑ์ของเราเอง และการได้รับค่าคอมมิชชันหรือไม่ไม่มีผลต่อลำดับการแนะนำหรือเนื้อหาการประเมิน

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *

Prove your humanity: 7   +   10   =