ผมมักจะใส่ shell script หรือ snippet ด้านล่างไว้ใน ~/.zshrc หรือทำเป็น alias แล้วใช้งาน เลยอยากลองมาถามว่าคนอื่นใช้ snippet อะไรกันบ้าง
เนื้อหาด้านล่างนี้ผมก็เขียนไว้ใน บล็อกส่วนตัว: shell snippet ที่ใช้บ่อย ด้วย แต่ไม่จำเป็นต้องกดเข้าไปดู เพราะผมวางเนื้อหาทั้งหมดไว้ที่นี่แล้ว
1. ดูหน้า man เป็น PDF
pman() {
mandoc -Tpdf "$(man -w $@)" | open -f -a Preview
}
สำหรับ mac os ใช้งานแบบ $ pman curl
2. ลบ branch ที่ถูกลบไปแล้วจาก git remote
git fetch -p && for branch in $(git branch -vv | grep ': gone]' | awk '{print $1}'); do git branch -D $branch; done
หรือจะใช้ git gone - คำสั่งแบบกำหนดเองสำหรับลบ branch ทั้งหมดที่ถูกลบจาก remote ก็ดูจะใช้ได้เหมือนกัน
3. นำ environment variable ใน .env มาใช้งาน
export $(grep -v '^#' .env | xargs)
จริง ๆ ใช้ direnv น่าจะดีกว่า แต่คงเพราะความเคยชิน เลยยังใช้ snippet ด้านบนบ่อยกว่า
4. เวลาต้องใช้ mysql บนเครื่องชั่วคราว
docker run --rm -d --name mysql \
-e MYSQL_ROOT_PASSWORD=password \
-e MYSQL_ROOT_HOST=% \
-p 3306:3306 \
-v $(pwd)/mysql_data:/var/lib/mysql \
mysql:8 \
--character-set-server=utf8mb4 \
--explicit_defaults_for_timestamp=true
หลังจากนั้นก็เชื่อมต่อผ่าน localhost:3306 เพื่อใช้งาน และถ้าไม่จำเป็นต้องเก็บ volume ไว้ ก็จะเอาออปชัน -v ออกแล้วใช้
6 ความคิดเห็น
เป็นสคริปต์ที่ทำให้สามารถใช้ Touch ID ได้ในสถานการณ์ที่ต้องกรอกรหัสผ่านผู้ดูแลระบบบน MacBook (เช่น
sudo)ตั้งค่าเพียงครั้งเดียวก็พอ แต่ถ้าถามว่าทำไมถึงมี alias นี้... ก็เพราะบางครั้งเวลาอัปเกรดเวอร์ชัน macOS การตั้งค่านี้จะถูกรีเซ็ตครับ
ไม่เคยนึกถึงการใช้อะไลแอสสำหรับเปิด
mysqlชั่วคราวเลย แต่ก็น่าสนใจดีนะครับส่วนผมใส่การตั้งค่าเล็ก ๆ แบบนี้ไว้ใน
.zshrcแล้วใช้อยู่ครับถ้ารัน
cpcat [ชื่อไฟล์]เนื้อหาของไฟล์นั้นจะถูกคัดลอกเข้าไปยังคลิปบอร์ดครับฉันใช้แบบนี้อยู่ ฮ่าๆ
โอ้ ปกติขี้เกียจ
pbcopyทุกครั้งอยู่แล้ว แบบนี้ดีเลย! ชื่อว่า Copycat สินะ 555แสดงพอร์ตที่ไม่ได้ใช้งานในช่วงพอร์ต 3000
โอ้ นี่เป็นทริกดี ๆ เลย... ขอบคุณครับ