Cat9 và LASH muốn thay đổi dòng lệnh Linux của bạn

Không cần phải nói rằng việc sử dụng dòng lệnh là cần thiết đối với người dùng thành thạo Linux thực sự và nhiều cá nhân thực sự thích làm như vậy. Tuy nhiên, một nhóm dự án mới muốn thay thế hầu hết ngăn xếp giao diện người dùng của bạn bắt đầu bằng trình bao vì trình bao, chương trình cung cấp dòng lệnh đó, bị sa lầy trong lịch sử cũ và phải hoạt động với những thứ hiện có cho dù nó có hiện đại đến đâu. . Cat9, về mặt kỹ thuật là một vỏ nhưng không phải theo cách mà bạn có thể nghĩ về vỏ, nằm ở đầu ngăn xếp đó

Chắc chắn, bạn có thể lưu trữ đầu ra để sử dụng sau, nhưng trình bao truyền thống cho phép bạn chạy từng chương trình một, cung cấp đầu vào cho chúng và xem đầu ra của chúng. Trong Cat9, mọi thứ đều không đồng bộ và kết quả vẫn tồn tại cho đến khi bạn bỏ chúng một cách có ý thức, mặc dù bạn có thể chạy các chương trình ở chế độ nền hoặc song song, nhưng điều đó đòi hỏi sự chú ý đặc biệt. Lấy dữ liệu từ một lệnh trước đó hoặc, ví dụ, chuyển sang một thư mục đang được sử dụng bởi một tác vụ trước đó, đều đơn giản

Theo tài liệu, Cat9 sử dụng LASH, một trong một số trình quản lý cửa sổ đặc biệt và Arcan, thứ mà họ cho là khó xây dựng. Xem video dưới đây để xem những gì nó có khả năng

Các lệnh được ghi lại dưới dạng công việc và số công việc có thể là tuyệt đối [như #5] hoặc tương đối [như #-1, công việc trước đó]. Ngoài ra, có các mã định danh duy nhất như #csel cho tác vụ có con trỏ và #last thay thế cho #-1

Một công việc ghi nhớ môi trường của nó và về cơ bản được tạo bằng cách chạy một lệnh và bắt đầu thu thập đầu ra của nó. Có một cách để buộc kiểu thực thi đó, do đó, cách điển hình mà một trình bao thông thường chạy một chương trình là một ngoại lệ đối với Cat9, nhưng vấn đề duy nhất là nếu bạn muốn tương tác trực tiếp với một chương trình, chẳng hạn như trình soạn thảo văn bản. Tuy nhiên, bạn có thể báo hiệu các công việc và chuyển đổi giữa các công việc cho đầu vào, giống như trong trình bao thông thường

Chẳng hạn, để xem công việc thứ tư đang sử dụng thư mục nào, bạn có thể buộc một lệnh chạy trong công việc đó

_10

Có các lệnh bổ sung để kiểm soát chế độ xem đầu ra, vì vậy bạn có thể chia đôi màn hình, cuộn qua dữ liệu, v.v. Tất nhiên, bạn cũng cần một cách để lấy dữ liệu từ một công việc đang chạy để nó có thể được chuyển làm đầu vào cho các lệnh khác. Khả năng tạo trình kích hoạt chạy khi công việc thành công hoặc thất bại là một ý tưởng quan trọng khác

Bạn sẽ cho cat9 một shot? . Nhiều lớp vỏ dành riêng cho ngôn ngữ thường bắt chước các ngôn ngữ khác có lượng người theo dõi thích hợp, nhưng hiếm khi đạt được lực kéo theo cách có ý nghĩa. Có lẽ Cat9 sẽ khác, hoặc có lẽ một số khái niệm của nó sẽ thấm vào các vỏ phổ biến hơn

Một số khái niệm rất đơn giản, chẳng hạn như lời nhắc sẽ biến mất khi bạn chuyển sang một dòng mới. Tất nhiên, nếu bạn đang ghi lại quá trình chạy thử, điều đó có thể phá vỡ quy trình làm việc của bạn, nhưng đối với phần lớn các trường hợp sử dụng, điều đó có ý nghĩa

Hãy nhớ rằng, Cat9 không thực sự làm bất cứ điều gì đặc biệt, vì vậy nếu bạn muốn một lớp vỏ khác gần với tiêu chuẩn hơn, chúng tôi đã xem xét một số trong số chúng. Nó có lẽ chỉ làm cho nó đơn giản hơn

Không có gì bí mật khi trở thành một người dùng thành thạo Linux thực sự, bạn phải xử lý dòng lệnh. Nhiều người thực sự thích sử dụng dòng lệnh. Tuy nhiên, trình bao - chương trình cung cấp dòng lệnh đó - đã bị sa lầy trong lịch sử cũ, điều đó có nghĩa là nó phải hoạt động với những thứ hiện có cho dù nó có cố gắng hiện đại đến đâu. Tuy nhiên, một nhóm dự án mới muốn thay thế hầu hết ngăn xếp giao diện người dùng của bạn bắt đầu bằng trình bao. Ở trên cùng của ngăn xếp đó là Cat9 về mặt kỹ thuật là một lớp vỏ, nhưng không phải theo cách mà bạn có thể tưởng tượng về một lớp vỏ

Shell truyền thống cho phép bạn chạy từng chương trình một, cung cấp đầu vào cho chúng và quan sát đầu ra của chúng. Chắc chắn rồi, bạn có thể cất đầu ra để sử dụng sau. Bạn có thể chạy các chương trình ở chế độ nền hoặc song song, nhưng điều đó cần được chú ý đặc biệt. Trong Cat9, mọi thứ đều không đồng bộ và kết quả vẫn tồn tại cho đến khi bạn cố tình bỏ chúng. Việc lấy dữ liệu từ một lệnh trước đó hoặc, ví dụ, để chuyển sang một thư mục được sử dụng bởi một tác vụ trước đó là chuyện nhỏ

Theo tài liệu, Cat9 sử dụng Arcan rất khó xây dựng [lời nói của họ]. Nó cũng sử dụng LASH và có khả năng là một trong một số trình quản lý cửa sổ khác thường. Nếu bạn muốn xem những gì nó có thể làm - hãy xem video bên dưới

Bạn sẽ nhận thấy rằng các lệnh được theo dõi dưới dạng công việc. Mã số công việc có thể là tuyệt đối [#5] hoặc tương đối [#-1, công việc trước đó]. Ngoài ra còn có các mã định danh đặc biệt như #csel cho công việc có con trỏ hoặc #last là từ đồng nghĩa với #-1

Nếu bạn chỉ chạy một lệnh, về cơ bản bạn sẽ tạo một công việc và bắt đầu thu thập đầu ra của nó. Một công việc ghi nhớ môi trường của nó. Vấn đề duy nhất là nếu bạn muốn tương tác trực tiếp với một chương trình, chẳng hạn như trình soạn thảo văn bản. Có một cách để buộc kiểu thực thi đó, vì vậy cách thông thường mà một trình bao thông thường chạy một chương trình là một ngoại lệ đối với Cat9. Tuy nhiên, bạn có thể chuyển đổi giữa các công việc cho đầu vào. Bạn cũng có thể báo hiệu công việc, giống như bạn có thể làm trong trình bao bình thường

Bạn có thể buộc các lệnh hoạt động trong một công việc. Ví dụ, để xem công việc thứ 4 đang sử dụng thư mục nào

#4 pwd

Tất nhiên, bạn cũng cần một cách để lấy dữ liệu từ một công việc đang chạy và dữ liệu đó có thể được chuyển làm đầu vào cho các lệnh khác. Có nhiều lệnh hơn để kiểm soát chế độ xem đầu ra, vì vậy bạn có thể chia đôi màn hình, cuộn qua dữ liệu, v.v. Một khái niệm quan trọng khác là bạn có thể tạo các trình kích hoạt thực thi khi một công việc thành công hoặc thất bại

Bạn sẽ thử cat9 chứ? . Wayland đã cố gắng 14 năm và vẫn còn một số chặng đường phía trước. Vỏ kỳ lạ đến và đi. Nhiều shell dành riêng cho ngôn ngữ thường mô phỏng theo các ngôn ngữ khác có lượng người theo dõi thích hợp, nhưng hiếm khi bắt kịp một cách đáng kể. Có lẽ Cat9 có thể khác. Hoặc có thể một số ý tưởng của nó sẽ rò rỉ vào vỏ chính

Một số ý tưởng rất đơn giản. Ví dụ: lời nhắc sẽ biến mất sau khi bạn chuyển sang một dòng mới. Tất nhiên, nếu bạn đang ghi lại quá trình chạy thử, điều đó có thể phá vỡ quy trình làm việc của bạn, nhưng đối với hầu hết các trường hợp sử dụng, điều đó có ý nghĩa. Tại sao đầu ra lộn xộn với dữ liệu không cần thiết?

Nếu bạn muốn một lớp vỏ khác gần với tiêu chuẩn hơn, chúng tôi đã xem xét một số lớp vỏ đó. Hãy nhớ rằng, không phải Cat9 thực sự làm được. Nó chỉ, có lẽ, làm cho nó dễ dàng hơn

Cat9 là tập lệnh trình bao người dùng cho LASH - trình bao dòng lệnh phân biệt đối xử với trình giả lập thiết bị đầu cuối, được viết bằng Lua. Có thể bạn chưa từng nghe nói về LASH trước đây. Nếu bạn thực sự phải biết, hãy xem phần Backstory bên dưới

LASH chỉ cung cấp một số cơ sở hạ tầng dùng chung cơ bản và vỏ khôi phục. Sau đó, nó chạy một tập lệnh do người dùng cung cấp thực sự cung cấp hầu hết các quy tắc về cách dòng lệnh được cho là trông và hoạt động

Điều đó đưa chúng ta trở lại Cat9, đó là kịch bản như vậy của tôi. Bạn có thể sử dụng nó nguyên trạng hoặc trộn nó thành thứ gì đó khác phù hợp với bạn - xem HACKING. md để biết thêm lời khuyên

Nó có thể làm gì?

Một trong những tiện ích lớn hơn, ngoài việc khá linh hoạt, là chạy và phân tách rõ ràng nhiều công việc đồng thời một cách không đồng bộ, với các kết quả từ 'out' và 'err' được lưu giữ cho đến khi bạn quyết định sử dụng lại hoặc quên nó đi. Đồng thời, các tác vụ ồn ào truyền thống như thay đổi thư mục bị chặn khỏi việc làm ô nhiễm chế độ xem của bạn với thông tin không liên quan

lash_test. mp4

Điều này cho phép hình ảnh gọn gàng như thay đổi bố cục, sắp xếp lại bản trình bày, gấp và mở. Nó cũng cho phép sử dụng lại kết quả của công việc trước đó mà không cần suy nghĩ nhiều về nó - bộ nhớ đệm là mặc định và bạn không cần chuyển hướng kết quả tới các tệp chỉ để sử dụng lại hoặc thực hiện lại đường ống khi tất cả những gì bạn muốn là xử lý khác các đầu ra cũ của nó

Nó cũng được thiết kế với mục đích có thể giao diện người dùng- các công cụ cli kế thừa với ít nỗ lực - tập hợp các nội trang mà trình bao cung cấp có thể được hoán đổi theo ngữ cảnh cho một thứ cụ thể để làm việc với một số ngữ cảnh cụ thể của miền hoặc công cụ. Bằng cách này, các công cụ nổi tiếng không thân thiện có thể được xử lý và tích hợp vào quy trình làm việc của bạn một cách dễ dàng nhất có thể

Nó hợp tác với trình quản lý cửa sổ máy tính để bàn của bạn [nếu bạn có], cho phép nó xử lý việc tách mọi thứ thành các cửa sổ mới hoặc thậm chí nhúng đầu ra của ứng dụng đồ họa hoặc phương tiện vào các vùng được cắt bớt trong cửa sổ của chính nó

nhúng. mp4 Cài đặt

Xây dựng và thiết lập điều này hiện không dành cho người yếu tim. Thoạt nhìn, nó có thể trông đơn giản, nhưng đi ngược lại bản chất của di sản tích lũy hàng thập kỷ đi kèm với một số xích mích

Đối với những người mới bắt đầu, bạn muốn có một bản dựng Arcan xuất phát trực tiếp từ nguồn. Những thứ cần thiết ở đây là mới, không có bất kỳ bản phát hành nào và đang được tích cực nghiên cứu. Arcan rất khó xây dựng từ nguồn và nếu bạn muốn nó thay thế toàn bộ máy chủ hiển thị của mình, thì cũng rất khó để thiết lập. Niềm vui nhân đôi

Đối với mục đích của chúng tôi ở đây, nó hoạt động tốt như một cửa sổ trông giống một cách kỳ lạ giống như một trình giả lập thiết bị đầu cuối, nhưng các bộ phận bên trong của nó hoàn toàn khác

Nếu bạn đã xây dựng được Arcan theo ý thích của mình, thì bạn cần khởi động Arcan bằng trình quản lý cửa sổ phù hợp

Có một số để lựa chọn, những cái đáng chú ý là

  • Durden - Xếp chồng / xếp chồng hoàn toàn sẽ có tất cả chuông và còi có thể tưởng tượng được
  • Pipeworld - Luồng dữ liệu ZUI vừa điên rồ vừa tuyệt vời cùng một lúc
  • Không gian an toàn - VR, một số người nói đó là tương lai và những người khác là tương lai của quá khứ

Sau đó, có một 'bảng điều khiển' khiêm tốn hơn nhiều bắt chước bảng điều khiển BSD/Linux chỉ với các tab toàn màn hình và vô hình. Vì nó đi kèm với chính Arcan, nên chúng tôi sẽ chọn cái đó. Cách thực sự bắt đầu lash từ trong phạm vi này, đối với bảng điều khiển thì thật dễ dàng

arcan console lash

Điều này sẽ thuyết phục Arcan thiết lập một trình bao đồ họa toàn màn hình đơn giản, sau đó chạy trình bao dòng lệnh văn bản trong lash. Than ôi cái vỏ sẽ vô dụng. Đây là nơi Cat9 xuất hiện

Bên dưới bề mặt nó thực sự chạy

ARCAN_ARG=cli=lua afsrv_terminal

sao chép hoặc liên kết cat9. lua tới $HOME/. arcan/lash/mặc định. lua hay cat9. lua [tạo thư mục nếu nó không tồn tại] cũng như thư mục con cat9 để có $HOME/. hồ quang/lash/cat9

Tương tự, trong Durden, nó sẽ là global/open/terminal=cli=lua và đối với các vùng an toàn, hãy thêm cli=lua vào dòng xuất hiện của thiết bị đầu cuối, e. g. lớp/hiện tại/thiết bị đầu cuối = cli = lua. Trong các phiên bản Durden gần đây, phím tắt này có một phím tắt là global/open/lash và cũng được liên kết với m1+m2+enter

Lần tới khi bạn khởi động bảng điều khiển arcan như trên, nếu bạn đã chọn mặc định. lua, nó sẽ bắt đầu ngay lập tức - nếu không, bạn phải tự yêu cầu lash chạy cat9 rulset bằng lệnh shell

shell cat9

Cái này quét LASH_BASE, HOME/. arcan/lash và XDG_CONFIG_HOME/arcan/lash cho một cat9 phù hợp. lua và chuyển sang đó. Cũng có thể đặt LASH_SHELL=cat9 và cat9. lua sẽ được thử ngay lập tức thay vì mặc định. lúa

Tập hợp các bước bổ sung này là để cho phép nhiều hệ vỏ cùng tồn tại, để có một đường dẫn sẵn cho các bộ quy tắc khác tham gia vào hiện trường mà ít gặp bất lợi hơn

Sử dụng

Theo mặc định, các lệnh sẽ được theo dõi dưới dạng 'công việc'. Chúng nhận các số nhận dạng và được tham chiếu bằng dấu thăng

find /tmp
repeat #0 flush

Những bảng này cũng có thể sử dụng địa chỉ tương đối, #-2 sẽ trỏ đến công việc mới nhất thứ hai được tạo. Ngoài ra còn có các công việc đặc biệt, chẳng hạn như #csel trỏ đến công việc hiện được con trỏ chọn và #last trỏ đến công việc được tạo mới nhất

Hầu hết các lệnh dựng sẵn đều sử dụng tham chiếu công việc theo cách này hay cách khác. Bối cảnh của những công việc này, e. g. biến môi trường và đường dẫn được theo dõi riêng. Bằng cách bắt đầu một lệnh với tham chiếu công việc, bối cảnh hiện tại tạm thời được đặt thành bối cảnh của công việc trước đó

cd /usr/share
find . -> becomes job #0
cd /tmp
#0 pwd -> /usr/share

Hầu hết các chuỗi đã nhập sẽ được thực thi dưới dạng các công việc không phải là tty. Để chạy thứ gì đó cụ thể dưới dạng ứng dụng tty [ncurses hoặc 'terminal-tui' khác], hãy đánh dấu nó bằng dấu. để sinh ra một cửa sổ mới được liên kết với trình giả lập thiết bị đầu cuối

!vim

Môi trường xử lý và tạo cửa sổ có thể được kiểm soát [e. g. xẻ dọc [v] hoặc nuốt [s]]

v!vim

Để từ bỏ mọi phân tích cú pháp hoặc đường ống nội bộ và chạy nguyên văn toàn bộ dòng [được chuyển tiếp tới sh -c], hãy sử dụng

________số 8

Điều này cũng hữu ích khi bạn cần mở rộng shell

!!rm -rf *

Một số khách hàng thực sự muốn có một thiết bị đầu cuối giả hoặc họ từ chối làm bất cứ điều gì, đối với những khách hàng đó, hãy bắt đầu bằng p. như vậy

arcan console lash
0

Chúng sẽ mặc định chuyển sang 'view wrap vt100' có máy trạng thái giả lập thiết bị đầu cuối thô sơ cần thêm một số công việc [xem cơ sở/vt100 *]

Dữ liệu có thể được cắt ra khỏi công việc vào dòng lệnh hiện tại bằng ctrl+space

ARCAN_ARG=cli=lua afsrv_terminal
0

và nhấn ctrl+dấu cách sẽ sao chép dòng 1 và 3 và mở rộng chúng vào dòng lệnh hiện tại. Định dạng đối số này cũng được hỗ trợ bởi một số nội trang, gõ

ARCAN_ARG=cli=lua afsrv_terminal
1

và nhấn enter sẽ sao chép các dòng từ 1 đến 5 vào một công việc mới

tùy biến

cấu hình/cấu hình. tệp lua có thể được chỉnh sửa để thay đổi cách trình bày, bố cục và các tùy chọn tương tự, bao gồm các định dạng cho lời nhắc và thanh tiêu đề. Hầu hết các tùy chọn này cũng có thể đạt được trong thời gian chạy thông qua nội trang 'config', bên dưới

Tổ hợp phím và nhấn nút chuột hoạt động giống như các dòng được nhập trên dấu nhắc, nhưng được xác định trong cấu hình/liên kết. tập tin lua. Keybindings được kích hoạt trên ctrl+[key]. Sau đây

ARCAN_ARG=cli=lua afsrv_terminal
2

sẽ tạo một liên kết mà bất cứ khi nào nhấn ctrl-A, công việc mới nhất được tạo sẽ bị xóa

Các nút chuột cũng tương tự, nhưng 'phím' phức tạp hơn một chút vì chúng được phân chia dựa trên vị trí bạn đang nhấp [thanh tiêu đề, nội dung dữ liệu,. ]. Liên kết phức tạp nhất hiện nay trông giống như thế này

ARCAN_ARG=cli=lua afsrv_terminal
3

Sẽ áp dụng lệnh xem dựng sẵn cho công việc được chọn bằng chuột ở phần bù hàng hiện tại nếu nút chuột thứ hai được nhấp vào cột đầu tiên [số dòng]

nội trang

Có một số lệnh dựng sẵn. Chúng được xác định bởi một basedir, chứa đầy các tệp riêng biệt cho mỗi lệnh dựng sẵn cùng với một trình tải chuỗi khớp với tên của basedir

ARCAN_ARG=cli=lua afsrv_terminal
4

Lý do cho cấu trúc này là để cho phép sử dụng lại lash để xây dựng giao diện người dùng CLI cho các công cụ khác, duy trì giao diện thống nhất và hoán đổi giữa chúng một cách nhanh chóng theo ý muốn. Bạn cũng có thể sửa đổi/mở rộng điều này để bắt chước hành vi của các trình bao phổ biến khác

Chúng cũng bao gồm một tập hợp các quan điểm. Dạng xem là một tập lệnh xác định cách trình bày dữ liệu trong một công việc và kiểm soát những thứ như màu sắc và định dạng, các thành phần tùy chọn như số dòng cũng như hành vi gói

Chúng có một cửa hàng cấu hình riêng theo mẫu

ARCAN_ARG=cli=lua afsrv_terminal
5

Các lệnh bao gồm trong bộ mặc định như sau

Đầu vào

Lệnh đầu vào là để kiểm soát cách các phần của giao diện người dùng phản hồi với đầu vào của chuột hoặc bàn phím. Theo mặc định, bàn phím được lấy bởi dòng lệnh. Phần lấy này có thể được phát hành bằng CTRL + ESCAPE

ARCAN_ARG=cli=lua afsrv_terminal
6

Điều này sẽ chỉ kích hoạt cho các công việc có đầu vào đang hoạt động và giữ nguyên tiêu điểm hiện tại nếu không

Dấu hiệu

ARCAN_ARG=cli=lua afsrv_terminal
7

Các lệnh tín hiệu gửi tín hiệu đến một công việc đang chạy hoặc một quy trình dựa trên mã định danh quy trình [số]

cấu hình

ARCAN_ARG=cli=lua afsrv_terminal
8

Các tùy chọn cấu hình thay đổi cấu hình hành vi trình bao thời gian chạy. Nó được phổ biến bởi các khóa và giá trị trong config/config. lúa

Một số mục tiêu cũng cho phép đặt thuộc tính, e. g. kiên trì hoặc bí danh

ARCAN_ARG=cli=lua afsrv_terminal
9

Nó có thể được sử dụng để cài đặt tải lại nóng và mã cho nội trang mặc định

shell cat9
0

Nó có thể được sử dụng để xác định bí danh

shell cat9
1

Khi ctrl+dấu cách được sử dụng với dòng đọc, từ cuối cùng sẽ được hoán đổi cho bí danh. Điều này sẽ không có hành động cam kết, vì vậy việc mở rộng được hiển thị để tránh những bất ngờ khó chịu

Mở

shell cat9
2

Điều này cố gắng mở nội dung của [tệp] thông qua trình xử lý được chỉ định. Đối với chế độ công việc cụ thể, nó sẽ chuyển cửa sổ sang bộ đệm văn bản hoặc bộ đệm hex. Cũng có thể bật nó ra dưới dạng cửa sổ hoặc tab mới

Quên đi

shell cat9
3

Điều này sẽ xóa nội dung và theo dõi các công việc trước đó, bằng cách chỉ định một hoặc một số công việc riêng biệt hoặc một phạm vi. Nếu bất kỳ công việc được đánh dấu nào vẫn đang hoạt động và được liên kết với một quy trình đang chạy, thì quy trình đó sẽ bị hủy. Ngoài ra còn có các cài đặt trước đặc biệt. toàn xấu, toàn cứng và toàn bị động; . 0 trả về mã trạng thái;

Nói lại

shell cat9
4

Điều này sẽ thực hiện lại một công việc trước đó đã hoàn thành. Nếu đối số tuôn ra được chỉ định, mọi dữ liệu được thu thập từ lần chạy trước đó sẽ bị loại bỏ. Nếu đối số chỉnh sửa được chỉ định, dòng lệnh tạo ra công việc sẽ được sao chép vào dòng lệnh - và nếu được thực thi, sẽ nối thêm hoặc xóa vào mã định danh công việc hiện có

Đĩa CD

shell cat9
5

Thay đổi thư mục hiện tại thành thư mục đã chỉ định, với cú pháp tuyệt đối hoặc tương đối thông thường. Cũng có thể quay lại thư mục hiện tại khi một công việc cụ thể được tạo

Cd cũng theo dõi các lệnh thư mục đang được chạy từ đó và thêm chúng vào lịch sử. Điều này có thể được truy cập thông qua đặc biệt

shell cat9
6

Trong đó f sẽ bị bỏ qua và tập hợp các cách hoàn thành được đề xuất sẽ đến từ danh sách các mục yêu thích. Điều này có thể được thay đổi thủ công, sử dụng f- để xóa đường dẫn và f+. hoặc f+ /some/path để thêm nó vào mục yêu thích

Lượt xem

shell cat9
7

Thay đổi bản trình bày công việc dựa trên bộ tùy chọn được cung cấp. Các tùy chọn có thể là

  • cuộn n - di chuyển phần bù trình bày bắt đầu từ dòng cuối cùng được đọc thành n dòng hoặc byte ngược lại

  • out hoặc stdout - đặt bộ đệm bản trình bày thành nội dung được đọc từ đầu ra tiêu chuẩn của công việc

  • err hoặc stderr - đặt bộ đệm trình bày thành nội dung được đọc từ đầu ra lỗi tiêu chuẩn của công việc

  • col hoặc thu gọn - chỉ hiển thị một số dòng nhỏ

  • exp hoặc expand - hiển thị càng nhiều bộ đệm càng tốt

  • tog hoặc chuyển đổi - chuyển đổi giữa chế độ col và exp

  • linenumber - chuyển đổi hiển thị một cột có bật/tắt số dòng

Ngoài ra còn có một số chế độ xem động có thể áp dụng các biến đổi cấp cao hơn trên nội dung để thay đổi cách trình bày. Một chế độ xem như vậy là 'bọc'

shell cat9
8

Điều này thực hiện gói từ, được lọc tùy chọn thông qua máy trạng thái đầu cuối [vt100] và với giới hạn cột tùy chỉnh

Sao chép

shell cat9
9

Lệnh sao chép được sử dụng để sao chép dữ liệu vào và ra khỏi chính Cat9, chẳng hạn như lấy đầu ra của một công việc trước đó và lưu trữ nó trong một tệp, vào một công việc đang chạy khác hoặc vào một công việc mới [nếu dst không được cung cấp]

Theo mặc định, src và dst chỉ được coi là tên có ngữ nghĩa bình thường cho đường dẫn tuyệt đối hoặc tương đối. Tùy thuộc vào tiền tố được sử dụng, vai trò có thể thay đổi

Sử dụng # sẽ coi nó như một tài liệu tham khảo công việc

sử dụng chọn. sẽ coi nó như một yêu cầu đối với lớp vỏ đồ họa bên ngoài [tôi. e. wm của bạn] để cung cấp tệp, tùy chọn có gợi ý tiện ích mở rộng

find /tmp
repeat #0 flush
0

Các đối số nguồn tùy chọn có thể được sử dụng để cắt ra các dải con, e. g

find /tmp
repeat #0 flush
1

Cái nào sẽ sao chép các dòng 1 đến 10 và dòng 20 của bộ đệm chế độ xem hiện tại vào đích

Đích sao chép không nhất thiết phải là tệp, chúng cũng có thể là các công việc tương tác khác hoặc các công việc đặc biệt như khay nhớ tạm. sẽ chuyển tiếp đến khay nhớ tạm WM bên ngoài

Env

find /tmp
repeat #0 flush
2

Điều này được sử dụng để thay đổi môi trường cho công việc mới. Nó cũng có thể được sử dụng để cập nhật môi trường được lưu trong bộ nhớ cache cho một công việc hiện có. Môi trường này sẽ được áp dụng nếu công việc được lặp lại hoặc nếu một công việc mới được bắt nguồn từ ngữ cảnh của một

find /tmp
repeat #0 flush
3

Kích hoạt

find /tmp
repeat #0 flush
4

Có thể đính kèm một số trình kích hoạt sự kiện cho một công việc có đính kèm một hành động bên ngoài. Lệnh cho đó là 'kích hoạt'. Điều kiện có thể là 'ok' hoặc 'fail', với độ trễ tùy chọn tính bằng giây. Hành động là bất kỳ chuỗi dòng lệnh thông thường nào [hãy nhớ đóng gói bằng ""]

Để xóa trình kích hoạt đã đặt trước đó, hãy sử dụng 'tuôn ra' thay vì hành động

Một trường hợp phổ biến đối với trình kích hoạt là lặp lại một công việc đã hoàn thành

find /tmp
repeat #0 flush
5

Sẽ tiếp tục khởi chạy lại công việc #0 sau 10 giây sau khi hoàn thành cho đến khi bị xóa

find /tmp
repeat #0 flush
6

cốt truyện

Arcan là cái mà một số người sẽ gọi là một dự án đầy tham vọng mà bạn phải mất hơn vài phút để hoàn thành. Trong số nhiều tiểu dự án của nó có SHMIF và TUI. SHMIF là một hệ thống IPC -- ban đầu là phân tích cú pháp phương tiện ngăn và hộp cát đã nhanh chóng phát triển để bao gồm tất cả giao tiếp giữa các quá trình cần thiết cho một thứ gì đó trên quy mô của một máy tính để bàn đầy đủ

TUI là một API được xếp lớp trên cùng của phía máy khách SHMIF, cùng với định dạng đóng gói văn bản [TPACK]. Lần đầu tiên nó được sử dụng để viết trình mô phỏng thiết bị đầu cuối đi kèm với Arcan, sau đó phát triển theo hướng thay thế tất cả việc sử dụng ECMA-48 và các mã thoát liên quan, cũng như các lớp kernel-tty và không gian người dùng. Mục tiêu cuối cùng là thay thế hoàn toàn tất cả các dấu vết của ncurses, đường đọc, tín hiệu trong băng tần, v.v. -- để có được các CLI và TUI được cải tiến rất cần thiết, hợp tác với vỏ máy tính để bàn đồ họa bên ngoài thay vì chống lại nó một cách mù quáng

Hành trình này đã được đề cập trong một số bài báo, những bài quan trọng nhất là 'sự khởi đầu của một giao diện dòng lệnh mới' và gần đây hơn là 'ngày của một giao diện dòng lệnh mới'. vỏ bọc'

Các bước sau đó là chuyển đổi chuyển đổi trong trình giả lập thiết bị đầu cuối arcan trước đó, cho phép chuyển sang các tập lệnh có liên kết dựa trên Lua nhúng với API TUI và các tiện ích của nó. Chế độ sau này và các tập lệnh hỗ trợ là những gì chúng tôi gọi là Lash. Ngược lại, Lash quá đơn giản để trở nên hữu ích và một bộ tập lệnh người dùng được cắm vào, Cat9 là một trong những bộ như vậy

Làm cách nào để thay đổi lệnh trong Linux?

Chỉnh sửa tệp bằng vim. .
Mở tệp trong vim bằng lệnh "vim". .
Nhập "/" rồi nhập tên của giá trị bạn muốn chỉnh sửa và nhấn Enter để tìm kiếm giá trị trong tệp. .
Nhập "i" để vào chế độ chèn
Sửa đổi giá trị mà bạn muốn thay đổi bằng các phím mũi tên trên bàn phím

Làm cách nào để thay đổi lệnh bash?

Bạn có thể tạm thời thay đổi lời nhắc BASH bằng cách sử dụng lệnh xuất . Lệnh này thay đổi lời nhắc cho đến khi người dùng đăng xuất. Bạn có thể đặt lại lời nhắc bằng cách đăng xuất, sau đó đăng nhập lại.

Lệnh Linux là gì?

Lệnh Linux là gì? . Dòng lệnh là một giao diện chấp nhận các dòng văn bản và xử lý chúng thành các hướng dẫn cho máy tính của bạn. Bất kỳ giao diện người dùng đồ họa [GUI] nào cũng chỉ là sự trừu tượng hóa của các chương trình dòng lệnh. a program or utility that runs on the command line. A command line is an interface that accepts lines of text and processes them into instructions for your computer. Any graphical user interface [GUI] is just an abstraction of command-line programs.

Làm cách nào để truy cập dòng lệnh trong Fedora?

Nếu bạn đã đăng nhập vào hệ thống thông qua giao diện người dùng đồ họa, hãy truy cập dòng lệnh thông qua chương trình đầu cuối. Chọn tùy chọn menu Ứng dụng → Phụ kiện → Thiết bị đầu cuối [Hệ thống → Thiết bị đầu cuối trong KDE] hoặc nhấp chuột phải vào nền màn hình và chọn Konsole trong KDE .

Bài Viết Liên Quan

Chủ Đề