Đây là lựa chọn lệnh có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
iSelect - Công cụ lựa chọn tương tác
SYNOPSIS
tôi chọn [-d STR,STR] [-c] [-f] [-a] [-e] [-p NUM] [-k KEY[:OKEY]] [-m] [-n STR] [-t STR]
[-S] [-K] [-P] [-Q STR] [dòng 1 dòng 2 ...]
tôi chọn [-V]
PHIÊN BẢN
1.4.0 (08-2007-XNUMX)
MÔ TẢ
Ý định
iSelect là một công cụ chọn dòng tương tác cho các tệp ASCII, hoạt động trên toàn màn hình
Phiên đầu cuối dựa trên lời nguyền. Nó có thể được sử dụng như một giao diện người dùng giao diện người dùng
được điều khiển bởi Bourne-Shell, Perl hoặc loại phụ trợ tập lệnh khác dưới dạng trình bao bọc của nó hoặc trong
hàng loạt như một bộ lọc đường ống (thường là giữa grep và lệnh thực thi cuối cùng). Trong khác
words: iSelect được thiết kế để sử dụng cho bất kỳ loại lựa chọn dựa trên dòng tương tác nào.
Đầu vào Ngày
Đầu vào được đọc từ dòng lệnh (dòng 1 dòng 2 ...) nơi mỗi đối số
tương ứng với một dòng đệm hoặc từ tiêu chuẩn (khi không có đối số nào được đưa ra) trong đó
dòng đệm được xác định theo các ký tự dòng mới.
Ngoài ra, bạn có thể để các chuỗi con hiển thị ở chế độ In đậm đối với các dòng không thể chọn
(vì các dòng có thể chọn luôn được in đậm) bằng cách sử dụng cấu trúc
`` " " ... " " '' như trong HTML.
Lựa chọn
Lựa chọn chỉ là một dòng duy nhất (mặc định) hoặc nhiều dòng (tùy chọn -m). Mỗi
mặc định không có dòng nào có thể chọn được. Nếu một dòng chứa chuỗi `` " " '' (hoặc một chuỗi có
các dấu phân cách khác nhau được định cấu hình thông qua tùy chọn -d) ở bất kỳ vị trí nào chuỗi này bị tước bỏ và
dòng có thể lựa chọn. Kết quả của nó (được in ra tiêu chuẩn) là nội dung của chính dòng (nhưng
tất nhiên không có chuỗi `` " " ''). Nếu tùy chọn -a được sử dụng tất cả các dòng có thể lựa chọn và
kết quả của họ lại là chính dòng đó, tức là sử dụng tùy chọn -a cũng giống như việc thêm
`` " " '' cho mọi dòng của dữ liệu đầu vào. Khi bạn muốn một kết quả cụ thể (tức là không chỉ
chính nội dung dòng), bạn phải sử dụng biến thể đặc biệt `` " "'' cái mà
dẫn đến kết quả đầu ra `` "văn bản kết quả" '' khi dòng tương ứng được chọn.
Khi bạn sử dụng một kết quả cụ thể thông qua `` " "'' NS kết quả văn bản có thể chứa
Các cấu trúc `` "% [query text] s" '' và `` "% [query text] S" ''. Đối với mỗi cấu trúc như vậy, một
truy vấn tương tác được thực hiện và kết quả thay thế cấu trúc. `` "% [Văn bản truy vấn] S" ''
cấu trúc giống như `` "% [văn bản truy vấn] s" '' ngoại trừ chuỗi trống như kết quả truy vấn là
không được chấp nhận trên đầu vào.
Lựa chọn toàn màn hình dựa trên Lời nguyền luôn được thực hiện thông qua / dev / tty, bởi vì tiêu chuẩn và
tiêu chuẩn các xử lý tệp thường được gắn với các luồng dữ liệu đầu vào và đầu ra.
Đầu ra Ngày
Đầu ra là chính dòng hoặc chuỗi được cho với `` " "''. Khi nào
chế độ lựa chọn nhiều dòng (tùy chọn -m) được sử dụng, đầu ra là tất cả các dòng đã chọn
bản thân hoặc các chuỗi kết quả được định cấu hình của chúng. Đầu ra luôn được ghi vào tiêu chuẩn.
LỰA CHỌN
Đầu vào Các lựa chọn
Các tùy chọn này kiểm soát cách thức tôi chọn phân tích cú pháp đầu vào của nó.
-d STR, --delimiter =STR
Đặt dấu phân cách cho các thẻ lựa chọn. Mặc định là `" <,> "', tức là vùng chọn
thẻ phải đọc `` " " '' và `` " "''
-c, --strip-comment
Loại bỏ tất cả các dòng chú thích sắc nét khỏi bộ đệm đầu vào trước khi phân tích cú pháp.
-f, --force-duyệt
Duyệt luôn luôn, tức là ngay cả khi bộ đệm đầu vào không chứa hoặc chỉ có một dòng.
-a, - chọn tất cả
Buộc chọn tất cả các dòng.
-e, --exit-no-select
Thoát ngay lập tức nếu không có dòng nào có thể chọn được. Trong trường hợp này, ngay cả màn hình Lời nguyền cũng không
được khởi tạo.
Giao diện Các lựa chọn
-p NUM, --position =NUM
Đặt vị trí con trỏ thành dòng NUM.
-k KEY[:OKEY], --key =TỪ KHÓA [: OKEY]
Xác định một phím nhập bổ sung. Theo mặc định OKEY là "RETURN", tức là -kf
định nghĩa một khóa lựa chọn khác `" f "'.
-m, - nhiều dòng
Bật lựa chọn nhiều dòng trong đó bạn có thể chọn nhiều hơn một dòng thông qua phím SPACE.
-n STR, --name =STR
Đặt chuỗi tên, được hiển thị ở bên trái ở cuối cửa sổ trình duyệt.
-t STR, --title =STR
Đặt chuỗi thanh tiêu đề, được hiển thị ở giữa ở cuối cửa sổ trình duyệt.
Đầu ra Các lựa chọn
-S, --strip-kết quả
Loại bỏ tất cả các khoảng trắng đầu và cuối khỏi chuỗi kết quả.
-K, - khóa-kết quả
Đặt tiền tố cho chuỗi kết quả (được đưa vào tiêu chuẩn) với phím chọn tương ứng
đã được dùng. Đây thường là "RETURN" hoặc "KEY_RIGHT" nhưng có thể là bất kỳ phần bổ sung nào
các phím được xác định bởi tùy chọn -k. Khi bạn sử dụng -kf và chọn một dòng "Foo Bar" với phím
`" f "'chuỗi kết quả là` `" f: Foo Bar "' '.
-P, - vị trí-kết quả
Đặt tiền tố cho chuỗi kết quả (được đưa vào tiêu chuẩn) với vị trí con trỏ tương ứng
tiếp theo là dấu hai chấm. Khi bạn chọn dòng N và dòng này có kết quả là "Foo Bar"
đã định cấu hình chuỗi kết quả là `` "N: Foo Bar" ''.
-Q STR, --quit-result =STR
Đặt chuỗi kết quả thành thoát. Mặc định là chuỗi trống.
Cho Phản hồi
-V, --phiên bản
Hiển thị chuỗi nhận dạng phiên bản.
TỪ KHÓA
Cursor Phong trào
Sử dụng những thứ này để duyệt qua danh sách lựa chọn.
CURSOR-UP ..... Di chuyển con trỏ lên một dòng
CURSOR-DOWN ... Di chuyển con trỏ xuống một dòng
LÊN TRANG ....... Di chuyển con trỏ lên một trang
TRANG-XUỐNG ..... Di chuyển con trỏ xuống một trang
g ............. Goto dòng đầu tiên
G ............. Chuyển dòng cuối cùng
Dòng Lựa chọn
Sử dụng các tùy chọn này để chọn một dòng và thoát ở chế độ tiêu chuẩn hoặc một hoặc nhiều dòng trong nhiều dòng
chế độ.
QUAY LẠI ........ Chọn dòng và thoát
CURSOR-RIGHT .. Chọn dòng và thoát
SPACE ......... Chọn dòng và ở lại (chỉ ở chế độ nhiều dòng)
Khác
Sử dụng những điều này để thoát iSelect hoặc để hiển thị trang trợ giúp và phiên bản của nó.
q ............. Thoát (thoát mà không có lựa chọn)
CURSOR-LEFT ... Thoát (thoát mà không có lựa chọn)
h ............. Trang Trợ giúp
v ............. Trang Phiên bản
THÍ DỤ
Như một ví dụ, chúng tôi đưa ra một tình huống thực tế trong đó iSelect có thể cải thiện một
chức năng. Chúng tôi xác định hai hàm Bash (dành cho $ HOME / .bashrc tệp) nâng cao
tích hợp sẵn `cd'lệnh của shell.
# quét cơ sở dữ liệu cho lệnh cd nâng cao
băng đĩa () {
(cd $ HOME;
tìm thấy . -type d -print | \
sed -e "s; ^ \.; $ HOME;" | \
sắp xếp -u> $ HOME / .cdpaths) &
}
# định nghĩa của lệnh cd nâng cao
đĩa CD () {
nếu [-d $ 1]; sau đó
nội trang cd $ 1
khác
nội trang cd `egrep" / $ 1 [^ /] * $ "$ HOME / .cdpaths | \
iselect -a -Q $ 1 -n "chdir" \
-t "Thay đổi Thư mục thành ..." `
fi
PS1 = "\ u @ \ h: $ PWD \ n:>"
}
Mới này 'cdlệnh 'tương thích với biến thể tích hợp sẵn Bashs cho trường hợp
thư mục chỉ định thực sự tồn tại. Khi không, bản gốc `cd'sẽ ngay lập tức
đưa ra một lỗi (giả sử chúng tôi không có CDPATH biến xác định). Đây phiên bản nâng cao này
cố gắng hơn nữa. Đầu tiên, nó tìm kiếm một thư mục như vậy trong một thư mục được xây dựng trước đó (thông qua CD)
$ HOME / .cdpaths các tập tin. Khi không tìm thấy dòng nào, iSelect chỉ trả về thư mục đã cho dưới dạng
kết quả mặc định và `cd'sau đó không thành công như bình thường với một thông báo lỗi. Khi chỉ có một
thư mục đã được tìm thấy, iSelect trực tiếp kết quả dòng cụ thể này thành `cd'. Và chỉ khi
sau đó, một thư mục được tìm thấy, iSelect mở màn hình lựa chọn dựa trên Lời nguyền và
cho phép người dùng chọn tương tác giữa các thư mục đó. Thư mục được chọn sau đó là
cuối cùng được trao cho `cd'.
Để biết thêm các ví dụ hữu ích về cách sử dụng iSelect, hãy xem đóng góp / thư mục của iSelect
tarball phân phối.
Sử dụng iselect trực tuyến bằng các dịch vụ onworks.net
