เปลี่ยน python script เป็น command line(หรือภาษา script อื่นๆ ก็ได้นะ)


เฉพาะบน unix นะครับ(Linux, Mac)

ก่อนอื่นสร้าง script กันก่อน
อันนี้คือ dos2unix เปลี่ยน end of line จาก dos(CRLF) ให้เป็น unix (LF)

#!/usr/bin/env python
# filename : dos2unix
import sys
if len(sys.argv) > 1:
    dos = open(sys.argv[1])
    buff = []
    for line in dos:
        #CR=\r LF=\n
        buff.append(line.replace('\r\n', '\n'))
    dos.close()
    unix = open(sys.argv[1], 'wb')
    for line in buff:
        unix.write(line)
    unix.close()
else:
    print 'usage'
    print 'dos2unix <filename>'

บรรทัดแรกคือเป็นตัวบอกว่าให้ execute file ของเราด้วยอะไรในที่นี้ก็คือ python ครับ

ต่อไปก็เพิ่ม permission ให้ file เรา execute ได้

chmod +x dos2unix

จากให้ก็นำไฟล์ไปวางไว้ในที่เก็บส่วนตัวของเรา อย่างเช่นในกรณีของผม
วางไว้ใน ~/Dropbox/util/

mv dos2unix ~/Dropbox/util/
cd ~/Dropbox/util/
pwd

เก็บผลของ pwd ไว้ เช่น /Users/moss/Dropbox/util/
แล้วก็ cd กลับมาที่ home dir ของท่านเองแล้วก็ทำการแก้ไขไฟล์
.bash_profile หรือ .bashrc อันนี้ขึ้นอยู่กับระบบของท่านว่ารองรับไฟล์ไหน
A: จะรู้ได้ไง???
B: ลองดูครับแบบไหนใช้ไม่ได้ แสดงว่าอีกแบบใช้ได้ครับ

เพิ่ม script นี้เข้าไปในไฟล์ดังกล่าวปรับ dir ตามความเหมาะสมของท่าน

PATH="/Users/moss/Dropbox/util/:${PATH}"
export PATH

ปิด Terminal แล้วเปิดใหม่
หรือไม่ก็

. .bash_profile

จากนั้นก็เชิญลองใช้ command line ใหม่ตามสะดวกเลยครับผม

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s