New FAMILUG

The PyMiers

Showing posts with label script. Show all posts
Showing posts with label script. Show all posts

Wednesday, 2 November 2016

upstart script chạy bằng /bin/sh -e

Nếu trong Upstart job file có sử dụng ``script``, script đó được chạy bằng lệnh ``/bin/sh -e``
Tức sẽ dừng lại lập tức khi có một lệnh nào đó fail.

Vì vậy cách check câu lệnh vừa chạy có fail hay không theo kiểu
command
if [ $? -ne 0 ]; then ...
sẽ dừng ngay khi ``command`` fail, phần if không bao giờ được chạy.

Friday, 17 January 2014

bash vs dash vs zsh vs python cho scripting

ubuntu / debian chuyển sang dùng dash làm /bin/sh 3-4 năm trước, vì dash nhanh và nhẹ hơn
dash 0.5.7-4:
A POSIX compliant shell that aims to be as small as possible
 archlinux tiếp tục sử dụng bash và không bao giờ chuyển sang dash
hvn@archhvn: ~ () $ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Aug 25 19:06 /bin/sh -> bash
freebsd replace tất cả các script perl bằng POSIX shell script (perl is bloat)

dash hay bash
đây là đánh đổi giữa tốc độ / tính portable và tính năng
bash có nhiều tính năng hơn dash (ví dụ: array) nhưng nặng/chậm hơn dash, không POSIX compatible.
man 1 bash
BUGS
       It's too big and too slow.

Thursday, 20 June 2013

Script hay làm bằng tay?

Bình thường tớ sẽ luôn trả lời là script vì viết script rất vui :D

Nhưng khi cần thực hiện xong công việc càng nhanh càng tốt, ngồi viết script chưa hẳn đã là điều hay ho. Trước khi thò tay định viết scritp để thực hiện một công việc gì đó nhằm tự động hóa nó, mục đích chính là làm xong công việc nhanh hơn, chính xác hơn, hiệu quả hơn, bạn nên tự hỏi mình vài câu:

- Liệu bạn làm thủ công có nhanh hơn không?
Nếu câu trả lời là có, đừng viết! Nếu bạn không thạo việc viết scritp, bạn sẽ tốn thêm thời gian để debug, google cách làm, đọc document cách dùng thư viện... và kết quả là bạn làm tay sẽ nhanh hơn. Bởi vậy, cần thật thành thạo và chính xác thì mới mang lại hiệu quả. Ví dụ:
bạn cần đổi tên 10 thư mục, thêm vào mỗi tên 1 dòng chữ XXX. Nếu bạn biết viết 1 câu lệnh bash với for, if, mv, bạn sẽ hoàn thành công việc này sau khoảng 20 giây. Nhưng nếu không thạo cú pháp, bạn lại mất thời gian debug, google thì có thể mất đến 3 phút, làm tay còn nhanh hơn.

- Script này có được sử dụng lại không?

Friday, 17 May 2013

[fish] Giới thiệu fish shell

Nếu bạn đã từng nghe nói đến bash / sh / hay zsh thì fish cũng là một cái tên đáng được biết đến. Chưa bàn đến khả năng dùng viết script thì riêng phần shell tương tác của fish cũng đã có các tính năng vượt trôi bash đáng để bạn dùng.

Nếu không biết bash/sh là gì, hãy đọc bài này 
Nhân dịp fish vừa ra phiên bản 2.0, FAMILUG làm ngay bài hóng hớt.

hvn@lappy ~> whatis fish
fish (1)             - fish - the friendly interactive shell

Các tính năng cài xong là thấy:
- Autocomplete
- Màu mè
- History thông minh
- gõ Help và đọc hướng dẫn sử dụng bằng web browser
Linh down package fish2.0   cho các hệ điều hành fish hỗ trợ
http://fishshell.com/files/2.0.0/linux/

Dưới đây là script để cài fish cho Ubuntu 12.04 bản x64, các phiên bản / hệ điều hành khác có thể thay đổi tùy theo máy mình: