精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Rust寫的NuShell用起來真香

系統
數年來,shell作為我們和操作系統通訊的方式,本質上是一個命令解釋器,它接收我們輸入的命令(如ls,cat等),然后調用相應的應用程序。

[[386553]]

 數年來,shell作為我們和操作系統通訊的方式,本質上是一個命令解釋器,它接收我們輸入的命令(如ls,cat等),然后調用相應的應用程序。

如今你可能還在使用古老的bash和sh,或者看上去稍微不錯的zsh,ksh,csh這些shell,還是在Windows下使用的PowerShell。今天我要給大家介紹一個生產力工具(裝逼神器)Shell,它叫Nushell,關鍵是它用程序員最喜歡的Rust寫的,速度飛快,作為內核的界面,用Rust重寫Shell安全性提高了,bug率降低了。

NuShell從許多熟悉的領域中汲取了線索:bash 等傳統 shell,PowerShell 等高級 shell,函數式編程,系統編程等。但是NuShell 并沒有試圖成為所有行業的杰作,而是將精力集中在做好一些事情上:

  • 創建具有現代感的靈活的跨平臺Shell
  • 允許你將命令行應用程序與可理解數據結構的Shell進行混合和匹配
  • 具有現代命令行應用程序提供的用戶體驗優化
  • 用強大的管道控制你的操作系統
  • 一切都是數據,并可以像sql一樣查詢數據
  • 插件系統,你可以擴展Shell通過自己編寫插件的方式

當你運行一個類似 ls 的命令時,第一個注意到的是所得到的不是一個文本塊,而是一個結構化的表

  1. > ls *.md 
  2. ───┬────────────────────┬──────┬─────────┬──────────── 
  3.  # │ name               │ type │ size    │ modified  
  4. ───┼────────────────────┼──────┼─────────┼──────────── 
  5.  0 │ CODE_OF_CONDUCT.md │ File │  3.4 KB │ 5 days ago  
  6.  1 │ CONTRIBUTING.md    │ File │   886 B │ 5 days ago  
  7.  2 │ README.md          │ File │ 15.0 KB │ 5 days ago  
  8.  3 │ TODO.md            │ File │  1.6 KB │ 5 days ago  
  9. ───┴────────────────────┴──────┴─────────┴──────────── 

這個表不僅僅是用另一種方式顯示了當前目錄。就像電子表格中的表一樣,可以更加交互性地處理數據。

比如,可以做的第一件事是把表格通過文件的大小來排序。

  1. > ls | sort-by size | reverse 
  2. ────┬────────────────────┬──────┬────────┬──────────── 
  3.  #  │ name               │ type │ size   │ modified 
  4. ────┼────────────────────┼──────┼────────┼──────────── 
  5.   0 │ Gemfile.lock       │ File │ 6.9 KB │ 3 days ago 
  6.   1 │ SUMMARY.md         │ File │ 3.7 KB │ 3 days ago 
  7.   2 │ Gemfile            │ File │ 1.1 KB │ 3 days ago 
  8.   3 │ LICENSE            │ File │ 1.1 KB │ 3 days ago 
  9.   4 │ CONTRIBUTING.md    │ File │  955 B │ 9 mins ago 
  10.   5 │ books.md           │ File │  687 B │ 3 days ago 
  11. ... 

可以看到我們沒有給 ls 傳遞命令行參數。作為代替,使用了Nu提供的sort-by命令來排序ls的輸出。為了讓最大的文件位于頂部,還使用了reverse。

Nu提供了許多可在表格上工作的命令。例如,可以過濾ls表格,只顯示大于1 KB的文件

  1. > ls | where size > 1kb 
  2. ───┬──────────────┬──────┬────────┬──────────── 
  3.  # │ name         │ type │ size   │ modified 
  4. ───┼──────────────┼──────┼────────┼──────────── 
  5.  0 │ Gemfile      │ File │ 1.1 KB │ 3 days ago 
  6.  1 │ Gemfile.lock │ File │ 6.9 KB │ 3 days ago 
  7.  2 │ LICENSE      │ File │ 1.1 KB │ 3 days ago 
  8.  3 │ SUMMARY.md   │ File │ 3.7 KB │ 3 days ago 
  9. ───┴──────────────┴──────┴────────┴──────────── 

就像 Unix 哲學,命令是可以互相組合起來,通過管道符鏈接.

接著看下一個命令ps

  1. > ps 
  2. ─────┬───────┬──────────────────┬─────────┬─────────┬──────────┬───────── 
  3.  #   │ pid   │ name             │ status  │ cpu     │ mem      │ virtual 
  4. ─────┼───────┼──────────────────┼─────────┼─────────┼──────────┼───────── 
  5.    0 │ 33155 │ nu_plugin_core_p │ Running │  3.8496 │   1.8 MB │  4.4 GB 
  6.    1 │ 32841 │ mdworker_shared  │ Running │  0.0000 │  19.3 MB │  4.4 GB 
  7.    2 │ 32829 │ CoreServicesUIAg │ Running │  0.0000 │  16.1 MB │  4.5 GB 
  8.    3 │ 32828 │ mdworker_shared  │ Running │  0.0000 │  23.0 MB │  4.4 GB 

如果你使用過Linux,可能會對ps命令相當熟悉。這個命令展示了系統所有正在運行的進程和它們的狀態與名稱。我們同樣可以查看到它們的 CPU 占用。

如果想顯示正在使用 CPU 的進程怎么辦?就像之前使用ls命令一樣,我們也可以使用ps命令返回的表:

  1. > ps | where cpu > 10 
  2. ───┬──────┬──────────────────┬─────────┬────────┬──────────┬───────── 
  3.  # │ pid  │ name             │ status  │ cpu    │ mem      │ virtual 
  4. ───┼──────┼──────────────────┼─────────┼────────┼──────────┼───────── 
  5.  0 │ 3971 │ Google Chrome He │ Running │ 5.1263 │  99.4 MB │  5.5 GB 
  6.  1 │  360 │ iTerm2           │ Running │ 6.6635 │ 218.6 MB │  6.0 GB 
  7. ───┴──────┴──────────────────┴─────────┴────────┴──────────┴───────── 

到目前為止,已經看到使用ls和ps列出文件和進程。Nu 還提供了其他可以創建有用信息表的命令。

接下來,讓我們繼續探索。

運行date將給出當前日期與時間的信息:

  1. date 
  2. ──────────┬──────── 
  3.  year     │ 2021 
  4.  month    │ 3 
  5.  day      │ 8 
  6.  hour     │ 09 
  7.  minute   │ 10 
  8.  second   │ 17 
  9.  timezone │ +08:00 
  10. ──────────┴──────── 

是不是比bash輸出的要清晰好多,對比下bash的輸出, 為了格式化,還需要查格式化命令

  1. Mon Mar  8 12:38:47 CST 2021 

運行sys將給出Nu所運行的系統的信息:

  1. > sys 
  2. ─────────┬───────────────────────────────────────── 
  3.  host    │ [row 7 columns] 
  4.  cpu     │ [row cores current ghz max ghz min ghz] 
  5.  disks   │ [table 2 rows
  6.  mem     │ [row free swap free swap total total] 
  7.  net     │ [table 11 rows
  8.  battery │ [table 1 rows
  9. ─────────┴───────────────────────────────────────── 

和之前的表有些不一樣, sys命令給出的表在單元格內包含了另一些結構化的表格,也就是表格嵌套了,而非簡單的數值。為了查看到這些數據,我們需要選擇要看的列:

  1. > sys | get host 
  2. ──────────┬───────────────────────────────────────────── 
  3.  name     │ Linux 
  4.  release  │ 5.3.0-1019-azure 
  5.  version  │ #20-Ubuntu SMP Fri Mar 27 23:54:23 UTC 2020 
  6.  hostname │ lifeless 
  7.  arch     │ x86_64 
  8.  uptime   │ 8:03:47:32 
  9.  sessions │ [table 2 rows
  10. ──────────┴───────────────────────────────────────────── 

get命令可以跳入表格中一列的內容。這樣,正在觀看 host 列,它包含了關于 Nu 所運行的主機的信息、操作系統的名字、主機名、CPU、架構等等。讓我們看看系統上的用戶名:

  1. > sys | get host.sessions 
  2. ───┬───────── 
  3.  # │ <value> 
  4. ───┼───────── 
  5.  0 │ jonathan 
  6. ───┴───────── 

目前,系統上只有一個用戶,名為 jonathan。你會注意到,我可以傳遞路徑( host.sessions 部分),而不僅僅是傳遞列名。Nu 將采用該路徑并轉到表中的相應數據位置。

你可能已經注意到其他的不同之處。這次查詢沒有一個數據表,而是只有一個元素:字符串 jonathan。Nu使用數據表和字符串。字符串是在Nu之外使用命令的重要組成部分。

讓我們看看字符串如何在Nu之外起作用。從前面的示例開始,并運行外部的 echo 命令( ^告訴nu不要使用內置的echo命令):

  1. > sys | get host.sessions | ^echo $it 
  2. jonathan 

如果這看起來與以前的傳統Shell非常相似,那么就說明你擁有敏銳的眼睛!相似,但是有一個重要的區別:對前面看到的值調用了 ^echo 。這允許我們將數據從Nu傳遞到echo(或 Nu 外部的任何命令,例如 git)。

注意:Nu 的內建命令的幫助文本可以用 help 來瀏覽:

  1. > help config 
  2. Configuration management. 
  3.  
  4. Usage: 
  5.   > config <subcommand> {flags} 
  6.  
  7. Subcommands: 
  8.   config get - Gets a value from the config 
  9.   config set - Sets a value in the config 
  10.   config set_into - Sets a value in the config 
  11.   config clear - clear the config 
  12.   config load - Loads the config from the path given 
  13.   config remove - Removes a value from the config 
  14.   config path - return the path to the config file 
  15.  
  16. Flags: 
  17.   -h, --help: Display this help message 

安裝Nu

方式1:從 crates.io 安裝

  1. cargo install nu 

方式2:使用 Homebrew,你需要安裝 openssl 和 cmake:

  1. brew install openssl cmake 
  2.  
  3. brew install nushell 

安裝完后,輸入

  1. > nu 

進入Shell,即可嘗試

本文轉載自微信公眾號「碼小菜」,可以通過以下二維碼關注。轉載本文請聯系碼小菜公眾號。

 

責任編輯:武曉燕 來源: 碼小菜
相關推薦

2021-06-30 09:20:18

NuShell工具Linux

2024-05-21 10:28:51

API設計架構

2022-05-22 21:16:46

TypeScriptOmit 工具

2023-02-07 06:55:26

Kafka消費消息

2024-07-04 11:33:33

2025-11-10 09:04:55

2012-07-11 09:34:39

微軟云計算

2020-07-06 15:13:16

安卓AirDrop無線傳輸

2020-01-06 15:00:43

Linux電腦發行版

2021-09-18 08:52:45

人工智能

2015-05-28 10:35:07

前端gulpdemo

2022-09-20 07:46:15

重試組件retrying

2022-11-07 09:25:02

Kafka存儲架構

2016-03-17 09:45:17

react雙向綁定插件

2020-11-27 14:28:13

數據分析工具數據庫

2012-12-17 09:54:08

2021-01-29 17:40:00

Flyme安卓手機安全

2016-06-12 09:28:46

Ubuntu 16.0升級Linux

2021-04-18 07:18:31

Chrome

2021-10-29 11:25:41

代碼編程語言Java
點贊
收藏

51CTO技術棧公眾號

亚洲黄页视频免费观看| 夜夜精品浪潮av一区二区三区| 欧美专区福利在线| 免费人成又黄又爽又色| 久久久久久一区二区三区四区别墅| 国产精品美女久久久久久2018| 91九色综合久久| 日本熟女一区二区| 日韩电影免费在线观看| 欧美一区二区三区色| 波多野结衣综合网| 成人激情电影在线看| 激情久久五月天| 国产91|九色| 永久免费看片直接| 欧美调教视频| 91精品国产综合久久精品麻豆 | 国产一级免费片| 精品视频一区二区三区四区五区| 亚洲欧美激情视频在线观看一区二区三区 | 国产一二三四在线| 日韩欧美精品综合| 国产视频久久久| 亚洲黄色av片| 九九热线视频只有这里最精品| 亚洲自拍偷拍图区| 亚洲乱码一区二区三区| 香蕉视频黄在线观看| 国产做a爰片久久毛片| 日本欧美中文字幕| 国产真人真事毛片| 久久久久美女| 中文日韩在线观看| 黄色工厂在线观看| 成人台湾亚洲精品一区二区 | 亚洲国产日韩在线观看| 日本aⅴ免费视频一区二区三区| 欧美激情久久久| 日韩高清dvd碟片| 精品日韩一区| 亚洲人成五月天| 好吊一区二区三区视频| 一区二区在线视频观看| 欧美日韩日日夜夜| 宅男噜噜噜66国产免费观看| 男人天堂视频在线观看| 亚洲一区二区中文在线| 中文字幕精品在线播放| 日本暖暖在线视频| 国产精品久久久久四虎| 日本精品一区二区三区高清 久久| 人人妻人人玩人人澡人人爽| 国产精品白丝jk白祙喷水网站| 91精品久久久久久久久| 艳妇乳肉豪妇荡乳av| 蜜芽一区二区三区| 国产精品免费一区二区三区都可以 | 亚洲色欧美另类| 99re这里只有精品视频首页| 国产精品亚洲综合| 天天操天天操天天干| 成人小视频免费观看| 国产不卡一区二区三区在线观看 | 欧美亚洲国产成人精品| 青娱乐免费在线视频| 女生裸体视频一区二区三区| 久久亚洲精品视频| 乱h高h女3p含苞待放| 天天射综合网视频| 欧美另类老女人| 久草资源在线视频| 亚洲视频综合| 97久久精品人人澡人人爽缅北| 日韩欧美亚洲国产| 先锋影音久久| 国产精品免费网站| 国产口爆吞精一区二区| 国产精品伊人色| 国产呦系列欧美呦日韩呦| 手机福利小视频在线播放| 91老司机福利 在线| 日韩高清三级| sm国产在线调教视频| 亚洲永久免费av| 欧美日韩亚洲一| 成人在线不卡| 精品久久久久久综合日本欧美| 你懂的在线观看网站| 久久成人av| 久久中文字幕国产| 欧美精品二区三区| 日韩中文字幕91| 97自拍视频| 色噜噜一区二区三区| 国产亚洲一本大道中文在线| 亚洲精品偷拍视频| 僵尸再翻生在线观看免费国语| 黄色精品在线看| 亚洲老女人av| 国产精品视频3p| 在线观看视频亚洲| xxxxxx国产| 久久99精品久久久久| 国产伦精品一区| 91网页在线观看| 偷拍亚洲欧洲综合| 国产又黄又猛的视频| 乱中年女人伦av一区二区| 最新国产精品亚洲| 99热国产在线观看| 黑人巨大精品欧美黑白配亚洲| 99精品国产高清在线观看| 免费在线国产| 亚洲不卡av一区二区三区| 在线观看免费成人av| 日本精品视频| 正在播放亚洲1区| 国产超碰人人爽人人做人人爱| 韩国av一区二区三区四区| 精品中文字幕人| 国产鲁鲁视频在线观看特色| 欧美日韩国产丝袜美女| 四川一级毛毛片| 色中色综合网| 欧美一级视频免费在线观看| 国产情侣在线播放| 国产日韩视频一区二区三区| 大伊香蕉精品视频在线| 亚洲免费看片| 色偷偷888欧美精品久久久| 男人午夜免费视频| 成人中文字幕在线| 亚洲一区二区三区乱码| 老色鬼在线视频| 精品国产乱码久久久久久久| 免费成人美女女在线观看| 视频一区国产视频| 蜜桃视频日韩| 日韩伦理在线一区| 亚洲精品99久久久久| 日本天堂中文字幕| 久久精品国产亚洲高清剧情介绍 | av亚洲免费| 庆余年2免费日韩剧观看大牛| 亚洲黄色在线播放| 亚洲另类在线制服丝袜| 岛国毛片在线播放| 日韩在线第七页| 国产精品网址在线| 丝袜美腿美女被狂躁在线观看| 在线观看成人免费视频| 国产成人无码精品久久二区三| 国产一区二区三区成人欧美日韩在线观看| 国产精品一区二区不卡视频| 中文字幕有码在线观看| 日韩精品一区二区三区swag| 91成人福利视频| 国产精品18久久久久| 成人在线免费观看网址| 欧美视频精品全部免费观看| 欧美成人三级视频网站| 精品国产乱码一区二区三 | 日本黄色片视频| 不卡的av电影| 91视频最新入口| 国产成人av| 国产精品久久久| 毛片在线不卡| 欧美成人a∨高清免费观看| 欧美精品xxxxx| av成人老司机| 九一精品在线观看| 88国产精品视频一区二区三区| 91亚洲人电影| 国产盗摄精品一区二区酒店| 日韩精品一二三四区| 波多野结衣在线电影| 中文字幕不卡的av| 国内精品国产三级国产aⅴ久| 欧美三级乱码| 欧美一区二区三区成人久久片| 国产精品久久乐| 色综合久综合久久综合久鬼88| 少妇喷水在线观看| 欧美系列在线观看| 欧美成人片在线观看| 成人99免费视频| 国产精品免费成人| 亚洲精品国产首次亮相| 精品久久蜜桃| 亚洲综合伊人| 91精品国产九九九久久久亚洲| 高清美女视频一区| 精品久久人人做人人爱| 日韩三级一区二区| 亚洲精品五月天| 亚洲精品国产熟女久久久| 国产原创一区二区三区| 国产最新免费视频| 欧美.日韩.国产.一区.二区| 精品1区2区| 91精品一区| 日本一欧美一欧美一亚洲视频| 国产美女福利在线| 亚洲欧洲中文天堂| 成人乱码一区二区三区| 欧美色网一区二区| 自拍偷拍欧美亚洲| 亚洲视频小说图片| 国产熟女一区二区| 成人黄色在线看| 日韩va在线观看| 免费亚洲婷婷| 免费看欧美黑人毛片| 色呦哟—国产精品| 日韩午夜视频在线观看| 国内精品国产成人国产三级粉色| 国产在线观看不卡| 欧美黑人粗大| 97在线免费观看| 免费不卡av| 美女精品久久久| av午夜在线| 亚洲人成电影网站色www| 国产91麻豆视频| 制服丝袜亚洲精品中文字幕| 国语对白做受69按摩| 精品久久久久久中文字幕大豆网| 久久久精品视频免费观看| 国产女人aaa级久久久级 | 国产日本欧美一区二区| 小毛片在线观看| 成人免费视频国产在线观看| 久久人人爽人人片| 国产一区999| 看看黄色一级片| 麻豆精品新av中文字幕| 亚洲乱码国产一区三区| 久久久久网站| 六月丁香婷婷在线| 亚洲欧美卡通另类91av| 9久久9毛片又大又硬又粗| 国产精品mm| 800av在线免费观看| 欧美精品一级| 欧美图片激情小说| 亚洲茄子视频| 5月婷婷6月丁香| 亚洲一区二区毛片| 免费在线激情视频| 老司机一区二区三区| 日日摸日日碰夜夜爽av| 亚洲一区二区三区高清不卡| 亚洲中文字幕无码专区| 国产深夜精品| 日韩黄色片视频| 日韩中文欧美在线| 手机视频在线观看| 韩国成人精品a∨在线观看| 污污视频在线免费| 国产91丝袜在线播放| 91传媒理伦片在线观看| 9人人澡人人爽人人精品| 中文字幕在线观看的网站| 国产婷婷色一区二区三区四区| 精品无码人妻一区二区免费蜜桃| 中文字幕不卡在线| 欧美日韩精品在线观看视频 | 视频一区二区三区四区五区| 午夜精品久久久久久久久| 国产剧情在线视频| 欧美日韩综合色| 99久久久国产精品无码免费| 日韩精品一区二| 四虎在线观看| 中文字幕最新精品| 欧美理论电影| 777777777亚洲妇女| 欧美影视资讯| 91免费视频网站| 久久综合另类图片小说| 日韩福利影院| 狠狠色丁香久久综合频道| 5月婷婷6月丁香| 狠狠色狠狠色综合日日91app| 69xxx免费视频| 久久精品视频在线看| 亚洲不卡在线播放| 午夜精品久久久久久不卡8050| 波多野结衣黄色网址| 91精品国模一区二区三区| 手机看片福利在线| 最近2019中文字幕一页二页| 女人天堂av在线播放| 欧美专区在线播放| 警花av一区二区三区| 久久免费看av| 亚洲精品a级片| 18岁视频在线观看| 国产精品一区久久久久| 老司机福利av| 一区二区三区四区视频精品免费| 日韩一级在线视频| 精品日韩在线一区| 91在线不卡| 5566成人精品视频免费| 日本亚洲视频| 亚洲日本欧美在线| 免费视频一区| 久久精品无码专区| 中文字幕一区免费在线观看| 国产尤物在线视频| 精品少妇一区二区三区日产乱码 | 国产精品区在线观看| 日韩精品欧美激情| 青青青国内视频在线观看软件| 国产精品久久一区| 同性恋视频一区| 成人免费观看在线| 韩国午夜理伦三级不卡影院| 深爱五月激情网| 亚洲成人av在线电影| 国产精品无码免费播放| 在线视频欧美日韩精品| 涩涩视频网站在线观看| 国产91色在线|亚洲| 国产精品二区不卡| 国产一二三区av| 国产亚洲欧洲997久久综合| 日韩在线视频免费播放| 亚洲电影第1页| 欧美bbbxxxxx| 高清国产在线一区| 欧美久久综合| 久久久国产精品久久久| 亚洲欧美精品午睡沙发| 国产女人18毛片18精品| 日韩在线中文视频| 激情久久一区二区| 色一情一乱一伦一区二区三区丨| 久久久久国产精品一区二区 | 国产美女精品视频国产| 最近2019中文字幕大全第二页| 中韩乱幕日产无线码一区| 欧美日韩亚洲一区二区三区在线观看 | 日韩免费不卡视频| 精品国产乱码久久久久久浪潮| 国产亚av手机在线观看| 国产伦理一区二区三区| 亚洲青涩在线| 黑人巨大精品欧美| 在线看国产一区| 成黄免费在线| 国产免费亚洲高清| 亚洲乱码免费伦视频| 亚洲在线观看网站| 亚洲最大色网站| 日本人妻丰满熟妇久久久久久| 久久久久久久97| 日韩欧美四区| 99视频精品免费| 国产精品美女久久久久久2018| 国产又黄又粗又硬| 久久99久久99精品免观看粉嫩| 成人知道污网站| 91传媒久久久| 国产精品毛片高清在线完整版| 国产又粗又大又黄| 色综合久综合久久综合久鬼88| 加勒比色老久久爱综合网| 黄色片视频在线免费观看| 国产欧美精品一区二区色综合朱莉 | 亚洲图片88| 97人人香蕉| 久久亚洲风情| 国产传媒免费在线观看| 精品国产制服丝袜高跟| 神马久久午夜| 亚洲在线欧美| 粉嫩aⅴ一区二区三区四区五区| 国产成人亚洲精品自产在线| 国产一区二区三区在线免费观看| 香蕉成人在线| 少妇人妻在线视频| 国产精品美日韩| 亚洲第一大网站| 人妖精品videosex性欧美| 91精品秘密在线观看| av网页在线观看| 欧美美女喷水视频| 9999热视频在线观看| 日韩欧美国产二区| 国产99久久久国产精品| 337p粉嫩色噜噜噜大肥臀| 久久不射电影网| 精品香蕉视频| 50一60岁老妇女毛片| 欧美猛男男办公室激情| 国产美女高潮在线观看| 一区二区冒白浆视频|