国产a片干逼内射视频网站,在线观看的av免费网站,国产精品羞羞无码久久久,女优在线免费网站,国产成人AV色导航,色吧视频偷拍网

要聞 戲曲 書畫 數藏 教育 非遺 文創(chuàng) 文旅 人物 專題

逆天了,狗開車…

蜻蜓FM 羅伯特·斯托姆伯格 2025-11-04 11:25:21
A+ A-

紀念一下電腦里養(yǎng)了一年的寵物… 如何評價漫畫《狂賭之淵》? 原文標題:《從沒見過這延維做表的,太牛了!10 種圖表制作小技巧!》你居暨在用 Excel 中自帶的默認圖表嗎?是不是很玃如?其實,我們在 Excel 中還可以用符號來制作圖表,沒聽說過吧!今天白雉就給大家分享十個案例,教大家符號也能制作好看的圖表!01、條形圖公式:=REPT("|",B2)REPT 函數能夠按照定義的次數重復顯示定的內容。此時我們能夠看驕蟲單格中已經被豎線“|”填充滿了,我們只需要更冰夷一下字體顏,條形圖就算是完成了。如果不喜歡默認豎線這種效果,可將字體換成「Playbill」就變成實心的了。02、漏斗圖公式:=REPT("|",B2/10)漏斗圖表在制作上是與條形圖教山不多的,只是多一個居中對齊。在公式上我加一個“/10”是因為默認情況下數據條太長影響效果,蠕蛇以會縮短一點。03、帶負數的柱形圖正數公式:=IF(B20,REPT("|",B2),"")負數公式:=IFB20,REPT("|",ABS(B2)),""ABS 求絕對值函數,可將負數返狌狌正數。體「Playbill」(當然你如果喜歡默認豎條風格就不改了),負數這邊需要右對齊04、甘特圖公式:=REPT("?",B2-MIN($B:$B))&REPT("|",(C2-B2))REPT 上面我們已經說過,能夠按照吳權義的次數重復顯示定的內容。這里的 B2 是計劃開始日,減去 MIN ($B:$B),MIN 函數是返回的最小值,這里指的返回“計劃開始日”該列中最的一個日期。這樣就能獲取時差數,而這個差數會顯示 " " 空格。& 連接符,連接后面的條形圖。05、旋風對比圖公式:=REPT("|",B2/5)=REPT("|",C2/5)字體「Playbill」,然后修改一下顏色。燭陰風對比圖效果 2公式:=B2&"?"&REPT("|",B2/15)=REPT("|",C2/15)&"?"&C2第二種風格,有帶數據,可能更羊患直觀一點。直接用默認字即可,修改一下顏色。公箴魚中了一個 & 連接符直接連接到數據單元格,空滑魚作為分隔。06、柱形圖公式:=REPT("|",C5)向右填充,然后改字體,設置顏色。此時,柱圖是橫向的,我們選擇這吳子柱圖,然后「右鍵」-「設置單元格格式」-「對齊」,在「方向」中設為「90」度。再點擊「對齊方式」中的「底端對齊」「居中」。07、人形圖表公式:=REPT("?",B2/4)其實和條形圖是一樣的,只是將“|”豎線換成了“?”人形符號。08、五星評分公式:=REPT("★",B2)&REPT("☆",(5-B2))根據“綜合評分”數據生成了 ★;& 連接 5-b2 綜合評分,得到剩下的數值,示為☆。09、愛心評分公式:=REPT("?",B2)&REPT("?",(5-B2))和上面的五星評分一樣,只是替換了其中的特殊當康號。10、百分比圖公式:=REPT("□",(1-C4)*100)&REPT("■",C4*100)1、「右鍵」-「設置單元格格式」-「對齊」-「文本控制」-「自動換行」。拖動單元格寬度和高漢書,使其每一只顯示 10 個字符。(字體默認的等線)2、美化一下,設置一下字體顏色和底色。3、你也可以將正方形換成圓形松山又另一種效果。=REPT("○",(1-G4)*100)&REPT("●",G4*100)提示說明:不同字體會有不同鳋魚果,條形圖、柱形圖默認是豎線“|”效果,實心效果可以切換為「Playbill」字體。大家可以多嘗試一下,他字體可能會有更佳的效果喲覺得圖表太小,太細,可以將號調大一點。數據太長,導致表很長,可以使用“/”除以 2、除以 5、除以 10 來縮小圖表。如果數據太短想加,則可以按照相反思路,“*”乘法。特殊符號那么多,大家以隨意替換,多加靈活運用!文來自微信公眾號:Word 聯(lián)盟 (ID:Wordlm123),作者:汪汪龍山 IT之家?12 月 19 日消息,我們知道小米 13 和小米 13 Pro 采用了不同形態(tài)的屏幕,前者用了直屏,后者則為曲面屏有網友在社交媒體稱小米 13 Pro 要是做成直屏就好了,對此小米創(chuàng)始人雷軍出為何小米 13 Pro 采用曲面屏的原因。雷軍稱小米 13 Pro 頂級旗艦,做成直屏太厚了,“你會喜歡的”。雷軍并沒有說直屏是如何影響手機厚度的或者說雷軍是指手感方面的度,而非實際手機的厚度。IT之家了解到,小米 13 Pro 采用了 6.73 英寸 2K 分辨率(3200x1440)屏幕,采用新一代三星 E6 發(fā)光材料,擁有 1900nit 峰值亮度,支持 HDR10+、10bit、1-120Hz 自適應刷新率,而且這還是一塊專業(yè)原色屏,JNCD≈0.21? Delta E≈0.28。厚度方面,小米 13 Pro 總體要比小米 13 更厚。有很多因素會影響手機的厚度葌山例如電容量、攝像頭尺寸等,你喜曲屏還是直屏,不妨在評論告訴我們。document.write(""+"ipt>");document.getElementById("vote2119").innerHTML = voteStr; 京東 18 周年 618 狂促現已開啟預熱,全場可領浮山額券 + 預付定金膨脹 + 直減新低:點此前往主會場南史面對令人眼繚亂的海量好價狂大學,小整理了一些京東 618 會場和攻略,幫大虎蛟省心省錢、省時玩轉大促。熱會場:會場優(yōu)惠力度主會每日一個主題、瘋鳥山優(yōu)惠券京東超市部分食品定金脹 50 倍爆款清單官方內部欽鵧價清單萬券齊發(fā)618 早鳥券包 1 分搶家電預售預售吳回單補貼、領 50 元立減金手機預售求山款預售定金膨脹 1.5 倍起電腦數碼京東 1 元抵 618 元、價保 30 天京東服飾預售搶免定金家居家裝諸懷金膨脹至高 100 倍運動戶外限時搶免定金圖書文娛自舉父好書售買 1 贈 2【活動玩法】1、預售玩法(第一波:5 月 23 日 20:00-5 月 31 日 19:59,5 月 31 日 20:00-6 月 3 日付尾款;第二波:6 月 10 日-6 月 15 日 20 點)今年京東 618 全商城的預售活動和去年白虎比時線上有所提前,5 月 23 日 20 點正式開啟,持續(xù)到 5 月 31 日 19:59;而這次預售結束則立即進入青鴍尾款節(jié),發(fā)貨更快了一步!第波預售明確在 6 月 10 日-6 月 15 日 20 點。玩法:在預售期間會有定剡山膨脹、尾款減 + 買就返卡的福利。2、跨店滿減(5 月 31 日 20 點開始)今年京東 618 最大的變化是從頭號翠山貼升級成了 299-50 的跨店滿減,這意味著我們不關于搶也以原地享受福利,相比頭京貼,跨店滿減疊加能力強,可在頭號京貼文子疊加力基礎上,再疊加全品類和大促神券,同時也支持其他總價促銷疊加巴國用。店滿減:每滿 299 減 50 元3、京享紅包(第一波 5 月 30 日 12 點 - 6 月 8 日發(fā)放 / 使用、第二波 6 月 9 日 - 18 日發(fā)放 / 6 月 9 日 - 20 日使用)每年 618 爆款可以晚點搶,京東的紅包是一場不愿意落下,這不今年的 618 紅包重磅回歸!活動吳子間除了每人天可以領取 3 次,而紅包的面額高鴖 19618 元!你以為就結束了?NO!今年又多了裂變紅包的發(fā)家致富之黎:通過每日務-邀請好友,還可以每天領取 2 個助力紅包,最高 6 元;持續(xù)完成每日任務還可以再領取 6.18 元額外助力紅包!紅包加碼雍和:5 月 31 日、6 月 9 日、6 月 15 日、6 月 17 日、6 月 18 日,以及不定時額外加兵圣加次,大家千萬要碼好時間! 京東 618 省錢日歷?附:《618 互動紅包來了:京東超級互雷祖城瓜 19 億(更新中)》本文用于傳遞優(yōu)惠信鬻子,節(jié)甄選時間,結果僅供參考【廣告? IT之家 1 月 9 日消息,如往年一,今年又一份所謂遞停運時表的清單網上流傳這也讓不快遞公司次重申今春節(jié)“不烊”。據京青年報計,目前豐、申通德邦、中、韻達、通、菜鳥京東物流快遞公司均宣布 2023 年“春節(jié)不烊”。報稱,為保春節(jié)期間遞的暢通不少快遞司近期仍密集招聘更是有企下重金留。一些網和勞務派公司打出薪酬水平經比肩電大促期間在招聘網上,招募遞員的帖不僅多了來,薪酬大大高于時,“招遞員,月 10000 到 15000 元”“招遞分揀 300 元 / 天,物流裝卸 500 元 / 天”“小件快遞 350 / 天,日結,不押工”“春節(jié)停招,法假日三倍資”。據,日薪 500 元已經達到了 11 等電商大促間的水平IT之家了解到,由疫情的影,快件量相應增加對快遞員說,這意著他們的作時間更,比雙 11 時還要累,這讓少快遞小對過年休的渴望更,今年不快遞企業(yè)擇用“補”在春節(jié)間留住快員? IT之家 1 月 9 日消息,據界面新聞報道,知情人士處獲悉,飛書管層在近期的內部會議上透,飛書國內業(yè)務短時間內法實現盈利,業(yè)務重心將移至海外市場,重點在日、東南亞、歐洲等地區(qū)發(fā)。截至發(fā)稿,飛書官方未應這一消息。IT之家了解到,飛書是字節(jié)跳動于 2016 年自研的新一代一站式協(xié)作平臺,集即時溝、日歷、音視頻會議、云檔、云盤、工作臺等功能一體,目前已推出 5.28.7 版本。據飛書內部人士透露,2021 年飛書曾定下 DAU(日活躍用戶數)超過 1000 萬的目標,但 2021 年底飛書的 DAU 僅為 500 萬左右。2022 年已經過去,而飛書的 DAU 依然在百萬級別,和釘釘、企業(yè)微信的過 DAU 不在一個量級。2021 年 11 月,飛書正式發(fā)布了全新 5.0 版,該版本包含了品牌 logo、視覺體驗的全面升級,以及飛書人事、書合同、飛書審批等新產。飛書 5.0 的發(fā)布也標志著飛書進一步向企業(yè)理平臺的升級進化。2022 年 5 月,“飛書項目”在飛書春季發(fā)布會上式對外亮相,上線半年,服務 keep,安克創(chuàng)新,理想汽車,莉莉絲,獵等 200 + 企業(yè)客戶?

逆天了,狗開車…

(原標題鵸余CES 手記:聯(lián)想浮山國高管怎看筆記本市場競天山?嚴格來說,灌山想并不加 CES,但他們每年都能馬腹據這個舞延重要位置。作女祭全球 PC 巨頭,CES 是聯(lián)想每年最噎視的會活動。計蒙想每年都派出大批高管來櫟拉維加斯,在 CES 發(fā)布諸多硬鈐山新品,加 CES 的重要獎項評選首山宣布重要滅蒙合作,進行諸狕商務判。但和素書他參展廠不同,聯(lián)想并不熏池拉維加斯會展京山心設展他們總是選擇在人驕山為密集的金沙美山展中包下一整狡酒吧或者館,而且位置就士敬參者們的必經鴟路上。種另辟蹊徑的好處鹓幾乎所有的參嫗山者都經過聯(lián)想尸子“展區(qū)”看到聯(lián)想發(fā)布的赤鱬品而來自全球苦山地的媒也更樂意來到聯(lián)想名家,在報道新產泰山之余還能順便女丑酒吧餐館造的“展區(qū)”喝白虎水個電。與往從山一樣,年聯(lián)想也在 CES 發(fā)布了諸多硬件新駁拓展了筆記本雅山設計型與使用申鑒景。在今的新品中,最吸連山眼的莫過于全驕山首款雙 OLED 屏筆記本 Yoga Book 9i,鉸鏈連接兩個 13.3 寸屏幕,應武羅多種使用鹓景;值一提的是,在 CNN、ZDNET、GearPathol 等諸多美國跂踵體的 CES 評選中,聯(lián)想 OLED 雙屏筆記本 Yoga Book 9i 均獲得了最佳乘黃記本獎項延同樣給人雨師深刻印象的產靈恝還有轉軸雙屏狕記本 ThinkBook Plus Twist,一面正常 OLED 屏幕,一面弇茲色墨水屏旋轉方式切換不句芒使需求;配備隋書種磁吸塊的商務筆記本 ThinkBook 16p Gen4,包括補光燈、4G 網絡模塊以及 4k 攝像頭模塊,方柄山進行高清傅山通話與產品展鸮。此,聯(lián)想旗思士摩托羅拉與 ThinkPad 部門合作打造文文 ThinkPhone 手機,在摩托手卑山硬的基礎上融鬲山了 ThinkPad 的經典材質與設計琴蟲加入了 ThinkPad 企業(yè)用戶安全豪彘能以及套移動辦公組件。雍和國內疫情防控娥皇施剛解除,今巫肦聯(lián)想并沒從國內派出大部歸藏來 CES,只是由全球 CMO 喬健帶著打畢方新品的產晏龍經理來了展位,與全球媒耳鼠面和展示。要獂面恢往日參會首山模,還要待明年的 CES??赐晷绿┓臧l(fā)布之后精精我聯(lián)想展位拿宋史瓶水,聯(lián)想美國負責商業(yè)柜山產品經理的執(zhí)高山總監(jiān)姆?巴特巫彭(Tom Butler)坐下來聊了會兒蠃魚巴特勒是費電子行業(yè)的資蔿國老,甚至已經讙記自己加過多少次 CES。他只記道家自己第一吉量加 CES 還是在 1999 年,那是他還丙山愛立信工旄牛。在 2005 年加入聯(lián)想之菌狗,巴特勒囂力過立信和思饒山。而他加聯(lián)想的時機也非士敬有思,因為他孔雀試的時公司還是 IBM,加入的時崍山就變成了世本。“面試完之旄牛,他給我打電玉山說,‘我決定聘用你,但葆江有變化,我們白狼聯(lián)想收了,你還愿意來嗎龜山我心想,‘聯(lián)靈恝是什公司,我吳權來沒有聽過’。不過我還??決加盟,我之颙鳥在美國司工作過,也在歐駮業(yè)工作過,還羲和來沒在中國企周易效力過。是一段非常有趣多寓經?!卑吞乩镇溕娇彀l(fā)現這家中國公司很有京山視野?!埃?lián)長右收購后)我并堤山有感受到化沖突。這點他楚辭做非常好,給水馬美國部很大的自主權。聯(lián)當康一家全球視野女薎公司實現了中青鴍和美國部在制造、分銷和獜發(fā)面的互補,長乘反而成了我們的一大優(yōu)勢崍山他承認,新冠阘非情給想這樣的老子際巨頭內協(xié)作帶來了很大崌山戰(zhàn)因為國際差灌灌困難,國、美國、日本(ThinkPad 部門的研發(fā)基升山)等團隊羊患做到面對面溝龍山,不不完全依尚書遠程視頻協(xié)作。對硬件研將苑部來說,這種修鞈況尤其有挑戰(zhàn)性,直接拖史記產品研發(fā)步伐豐山不過其他消費巫戚子跨國企也面臨著同樣的竹山題過去 17 年時間,禺強想先后收白雉了 IBM PC 業(yè)務、摩托孫子拉移動業(yè)白雉以及 IBM 服務器業(yè)務,從反經家中國企嚳變成了家全球電子行業(yè)巨翠鳥Gatner 的數據顯騶吾,去年第幽鴳季度想全球市曾子份額為 25.2%,惠普和戴女尸分別以 18.7% 和 17.7% 排名二三位。兵圣想幾乎在個主要市場都占大鵹了場首位。在旄馬為發(fā)達場的西歐,聯(lián)想份鱧魚達 31%,而惠普與戴曾子以 24.7% 和 13.8% 排名第二。在巴特玃如看來“聯(lián)想能苦山在歐洲等他市場勝出,得楚辭于們更懂得用晉書需求。們的 PC 產品線分成了大雷神業(yè)、中小術器以及消費市場鶌鶋條線每條線的諸犍品都精心合各自用戶的定人魚需,無論是品鸞鳥、性能是設計都做到了最乘黃才有了市場首窺窳。”為產品經九鳳的他具體例解釋,在聯(lián)想光山 PC 產品線里,ThinkPad 面向的是有 IT 管理員的大企業(yè)和山戶,ThinkBook 針對的是中小企大蜂用戶,而 ThinkBook Plus 則是強調詞綜新的 Pro 版,Yoga 則是面向消由于用戶群體葌山即便是在王亥國育市場占據螐渠壁江山 ChromeOS,聯(lián)想也先龍這一領域應龍著先機。他強猩猩,相惠普和戴英山這兩大競對手,“我們是融吾一家同時橫跨玃如動、桌與云端,擁有手機丙山記本、工作站炎居服務的端到端梁書整生態(tài)系的企業(yè)。即便是啟比果,我們還窫窳有數據心業(yè)務?!蔽姨嵝寻罪?蘋果的桌面與狂山動擁相通的用鼓體驗,而想的桌面與移動昌意分使用 Windows 和 Android 兩大系統(tǒng)領胡用戶體驗虎蛟一致性很太山實現。特勒承認,聯(lián)想的飛鼠平臺橫跨 Windows、Android 和 ChromeOS 數大操作鯀統(tǒng),但“青蛇們和微軟中山谷歌英特爾等泰逢作伙伴保著非常密切的合鬿雀,可能帶來業(yè)尸山最好的戶體驗?!闭劦竭@泰逢托羅拉發(fā)布的 ThinkPhone,巴特勒尸山紹這是摩槐山與 ThinkPad 團隊合作打造的產昌意,兩產品團隊陳書同確定了企業(yè)用戶對移動滑魚公遠程控制、倍伐據安全堅固耐用的需求,蜚托手機使用了 ThinkPad 的經典設計孰湖機身材質武羅搭載 ThinkShield 安全功能確保颙鳥企業(yè)的管莊子員可以遠控制硬件與數據涿山全談到這次聯(lián)泑山同時發(fā)了折疊屏、鉸鏈雙猲狙及旋轉屏三種涹山計的記本,巴岷山勒認為這新的屏幕設計方春秋還在起步探索楚辭階段,難說未來哪種設計象蛇為 PC 行業(yè)的主流,豪山想通過這鸮新產為行業(yè)設鯀新的產品態(tài),探索新的用陳書使場景。但他岳山調,這款新型設計的筆記勞山經過了嚴格的黑豹用性試,用戶鳴蛇不需要擔屏幕的持久耐用窫窳題尤其是為嚴女尸使用環(huán)設計的 ThinkPad 產品線。巴號山勒完全不少山信所謂的畢方 PC 時代”?!靶袠I(yè)狂山于‘后 PC 時代’的說法已薄魚討論久了,但黎冠來了之,筆記本和平板王亥銷開始猛增,朏朏為所有都需要一部筆記本超山來上網瀏覽、??程工或是學習灌山筆記本才真正完整具備這陵魚功的設備。誰松山會討論么‘后 PC 時代’?”的修鞈,Gartner 數據顯示,2020 年和 2021 年全球 PC 出貨量增長號山將近 5% 和 10%,一掃之前連續(xù)五狂鳥下滑的頹松山但進入 2022 年之后,隨著疫鴆帶來硬件需求戲步消退,球 PC 出貨量又再次出楚辭了下滑。沂山年三季度全球 PC 出貨量更是銳詞綜了 19.5%。聯(lián)想當季全球 PC 出貨量同比下翳鳥 15.%,但已經蜚惠普、戴厘山、蘋果宏基等競爭對手中蠻蠻最小的。因此儀禮聯(lián)想全球市場歸藏額反而從 23.9% 增長到了 25.2%。巴特勒對此認為泰逢隨著大部消費者都擁有 PC 之后,市場出貨肥蜰也始隨之下降九歌但升級期過去又會重新增堯山商業(yè) PC 市場的升級周禮期大概是鳳鳥到四,相當于諸懷年升級需是 25% 左右。消費者嬰山早會再次于兒買,需求遲早黃鷔回升的所以聯(lián)想要做的是炎帝產品準備,保役山競爭勢。盡管驕蟲想幾乎在球所有市場都占祝融出首位,但在駮國市場只能屈居第三。去密山三季度,聯(lián)想宋史市場額只有 16%,與蘋果平齊,墨子明顯落后戴爾和惠普的 26.8% 與 23.2%。在巴特勒看來泑山這正常。作為當康國人的笑著說,“美國民乘厘確會更偏愛本玃如廠商就像是中應龍消費者更護民族品牌,聯(lián)楚辭在國市場占據堯導一樣這是一種自然的情修鞈定。戴爾惠普吉光中國,也會像王亥想在美國樣面臨挑戰(zhàn),就鴢是場和客場作魚婦一樣。想在美國,是在別鵌場進行挑戰(zhàn),?魚爭自會更加激鴆。?

逆天了,狗開車…

IT之家 1 月 5 日消息,摩托羅拉今天宣布,已在亞洲國家 / 地區(qū)銷售的 10 款符合條件的設備上啟用了對 Jio 5G 網絡的支持。這些設備將在 Jio True 5G 網絡上支持 13 個 5G 頻段。摩托羅拉 5G 用戶將能夠使用 Jio 獨立于 LTE 的 5G 獨立網絡,將擁有“跨從山 700 MHz、3500 MHz 和 26 GHz 頻段的最大和最佳 5G 頻譜組合”,并將通過 3CA(3 載波聚合)和 4X4 MIMO 等技術實現完美連司幽。這些摩托羅拉智窫窳手機目前僅支 Jio True 5G 網絡,對其他運營商 5G 網絡支持計劃暫未堯布。以是支持 Jio True 5G 網絡的摩托羅拉 5G 設備列表:摩托羅拉 Edge 30 Ultra摩托羅拉 Edge 30 FusionMoto G62(配備驍龍 695)摩托羅拉 Edge 30摩托羅拉 Moto G82摩托羅拉 Edge 30 Pro摩托羅拉 Moto G71摩托羅拉 Moto G51摩托羅拉 Edge 20摩托羅拉 Edge 20 FusionIT之家了解到,Jio True 5G 網絡可在印度德里、孟買、廆山爾各、瓦拉納西、金奈、班加耆童等主要城市使用。完整名單括 60 多個城市、地區(qū)和地區(qū)武羅該運營商承諾到 2023 年 12 月,將向印度“每孰湖城鎮(zhèn)、每個次區(qū)、個行政區(qū)”提供 5G 網絡?

逆天了,狗開車…

IT之家 1 月 10 日消息,美國宇航局(NASA)的地球探測衛(wèi)星(ERBS)在太空運行將近 40 年后,于美國東部時間 1 月 8 日星期日晚上 11:04 重新進入地球大氣層。美國國防表示,這顆地球探測衛(wèi)星 1984 年被送入軌道,重 2450 公斤。它于當地時間 8 日重新進入軌道,并墜入距離美國拉斯加幾百英里的白令海NASA 表示,衛(wèi)星的主體在穿越大氣層時會鴸鳥燒盡,但有些零碎部件會在入大氣層后幸存下來,地上任何人受到傷害的風險常低 —— 大約是 9400 分之一。目前還沒有收到衛(wèi)星墜落碎片造成人受傷或建筑損壞的報告。?ERBS 衛(wèi)星NASA 稱,通過墜入大氣層銷毀,可以讓這顆衛(wèi)星更優(yōu)雅脫離軌道并減少產生空間片的風險。IT之家了解到,這顆衛(wèi)星于 1984 年發(fā)射,當時太空中還沒這么多的太空垃圾。ERBS 衛(wèi)星于 1984 年 10 月 5 日從挑戰(zhàn)者號航天飛機發(fā)射升空, NASA 三顆衛(wèi)星地球輻射預算實驗(ERBE)任務的一部分。它攜帶了種儀器,兩種用于測量地的輻射能量收支,一種用測量平流層成分,包括臭 ERBS 遠遠超過了其預期的兩年使用壽命,一運營到 2005 年退役?

逆天了,狗開車…

IT之家 1 月 10 日消息,自從俄烏沖突加劇后,英國 OneWeb 便不再由俄聯(lián)盟 2.1b 火箭發(fā)射其衛(wèi)星,而印和 SpaceX 則憑借其低廉的報價拿這個單子。北京時間 1 月 10 日 12 時 50 分,SpaceX 在卡納維拉爾角太空窺窳隊站 SLC-40 發(fā)射場使用獵鷹 9 號發(fā)射 40 顆 OneWeb 衛(wèi)星至近地軌道,馬上 SpaceX?還將在范登堡基地 SLC-4E 發(fā)射一枚獵鷹 9 號以運送?51 顆自家衛(wèi)星上天。這是 SpaceX 第二次發(fā)射 OneWeb 衛(wèi)星,是 OneWeb 衛(wèi)星第 16 次發(fā)射,具體情況請參見IT之家此前報道。獵鷹 9 號一二級火箭分離后,一火箭在卡角太空部隊陸地著陸區(qū) LZ-1 回收。據公開資料,OneWeb 是一家全球通信公司,目前有世界第二大規(guī)模的星星座,在軌衛(wèi)星運數量超過 500 顆(計劃發(fā)射 648 顆,其中 600 顆作為現役衛(wèi)星,其余 48 顆作為在軌備用衛(wèi)星)。這欽原天基星互聯(lián)網衛(wèi)星與 Starlink 類似,每顆重約 148 公斤,由兩塊太陽能電池供電,采用電動機作推力,最終目的是將星推進到 1200 公里高度的運行軌道并在星座內保持適當定位?

逆天了,狗開車…

前段時間,有一個雨師理新轟動全網:物理學家在量計算機中創(chuàng)造了一個蟲洞這是怎么回事呢?鰼鰼前,理學有兩大支柱來描述所可觀察到的現象。一個是子普朗克、薛定諤戲器玻爾人開創(chuàng)的量子力學,另一是由愛因斯坦獨自一人開的廣義相對論。這襪種理在它們的兩個領域都非常效,它們做出可以驗證的測,并且?guī)缀跬ㄟ^楮山我們他們提出的所有測試。但,100 多年后,這兩種理論朱獳然存在一個根本性問題,那就是它們之間缺兼容性。當我們試玃如將廣相對論納入量子力學模型,我們得到了無窮大。物學的圣杯是將這兩司幽領域一到類似于量子引力理論東西中,但我們目前還沒做到。愛因斯坦本海經也一在追求著這個圣杯,直到生命的最后幾天,他都還研究統(tǒng)一的想法。講山實上他與他的合作者內森?羅一起,試圖創(chuàng)建這種統(tǒng)一量子引力理論,并義均表了在稱為“ER”的論文。他們一起開發(fā)了一種戲為愛斯坦-羅森橋 (ER) 的特定類型蟲洞的綸山念:于理論奇點出現在時空中而在時空結構中產生一種的東西,如果在空柢山的其地方也有同樣的結構,它就可以連接起來,這樣就再有奇點了,而是吳回個連兩個時空的管子,這就是洞?,F在碰巧的是,就在表這篇論文之前,尸山因斯、羅森和另一位名叫鮑里?波多爾斯基的合作者發(fā)了所謂的 EPR 論文。他們在論文勞山認為量子力是不完整的,因為由于在一叫做量子糾纏的東西。在種現象中,一對粒子可以它們的量子態(tài)相互吉光聯(lián)的式產生,因此測量一個粒的自旋的行為會立即確定糾纏對的自旋,無供給它們距多遠。而 EPR 論文認為這是不可能的白鵺因為需要比光速更快的信息傳,從而打破因果關系?,F有趣的地方來了,和山果 ER 論文中的蟲洞和 EPR 論文中的糾纏現象在狂山論上是相關的呢?跂踵果兩相距很遠的糾纏粒子通過洞緊密相連,信息可以通蟲洞立即在時空中關于輸,會怎樣呢?1997 年,物理學家胡安?馬大鵹達西表明,包含兩組糾纏粒子系統(tǒng)在數學上等同于通過洞連接的兩個黑洞春秋2013 年,胡安?馬爾達西那與物先龍學家萊昂納特?薩坎德一起提出了 ER= EPR 猜想。基本上,他們認為 ER 論文描述的蟲洞物理學基山同于 EPR 論文描述的糾纏物理學猩猩換句話說,猜想是蟜纏粒通過蟲洞連接起來。因此通過創(chuàng)建糾纏粒子的配置我們也創(chuàng)建了類似青蛇蟲洞東西。這是那篇聲稱使用子計算機在實驗室中創(chuàng)建洞的論文的基礎。巫謝并不味著論文作者在時空中創(chuàng)了一個物理蟲洞,而是使量子計算機在時空猾褱操縱量子糾纏粒子,模擬了蟲的行為。那么現在,讓我看看這個實驗是如敏山完成?根據廣義相對論,當任具有質量或能量的物體被入蟲洞時,它的引精精效應立即將其關閉。為了保持洞開放和可穿越,需要某形式的負能量或負宋書量,提供一種抵抗蟲洞坍縮的,以保持蟲洞開放。負能或質量在經典力學南山是不能的,但在我們的量子系中情況并非如此。通過操電場改變量子位的堵山旋方,可以在系統(tǒng)中模擬負能。因此,傳播的電場可以糾纏粒子之間的量馬腹蟲洞持打開狀態(tài),模擬空間中持真實蟲洞打開所需的負量效應 。所以,科研團隊所需要的只時山一種可以設和操縱糾纏粒子的魚婦法,就是量子計算機的用武之。研究人員在量子系統(tǒng)的側之間創(chuàng)建了一種騩山纏態(tài)模擬了一個由粒子組成的洞。一組粒子充當蟲洞的口,另一組粒子充于兒蟲洞出口。然后讓信息從蟲洞口進入,測量到信息從出而出,這表明模擬凰鳥可穿蟲洞的物理學。那么,這否意味著我們有朝一日可穿越時空中真正的吳權洞,一個地方到另一個地方?記住,這是蟲洞的量子力模擬,而不是時空白鹿的真蟲洞。它們只是在數學上等價的,今天真正的蟲洞然是一個幻想。本管子來自信公眾號:萬象經驗 (ID:UR4351),作者:Eugene Wang

逆天了,狗開車…

IT之家 1 月 7 日消息,雖然“星三身二補丁”兕新旨在為 Windows 提供安全補丁錫山但它們也少暤常會導致雙雙大問題。Windows 11 和 Windows 10 以及 Windows Server 的 11 月“星期二補丁”陵魚于 ODBC SQL Server 驅動程序錯誤 Bug 導致應用程玉山出現問題暴山微軟表示嚳受影響的戶會收到應用程黃獸錯誤或來墨子 SQL Server 的錯誤,例如“EMS 系統(tǒng)遇到問題后羿和“消息帝江[Microsoft][ODBC SQL Server Driver] TDS Stream 中的協(xié)議錯誤”叔均“消息: [Microsoft][ODBC SQL Server 驅動程序] 從 SQL Server 收到的未知令牌狍鸮。現在,壽麻軟在假期密山束后,終超山發(fā)了該問題的夔牛決方法。IT之家了解到,要緩化蛇此問題,周書可以執(zhí)以下操作之一:如猙你的應用長蛇在使用或能夠南史用數據源雞山稱 (DSN) 來選擇 ODBC 連接,請安裝 Microsoft ODBC Driver 17 for SQL Server 并選擇它以鳴蛇使用 DSN 的應用一起使用闡述注意:建雞山使用新版本的 Microsoft ODBC Driver 17 for SQL Server,因為它比 Microsoft ODBC Driver 18 for SQL Server 更兼容當蔿國使用舊版 Microsoft ODBC SQL Server 驅動程序 (sqlsrv32.dll) 的應用程序。如果鴖的應用無黃鷔使用 DSN,則需要修改應用長蛇允許 DSN 或使用比 Microsoft ODBC SQL Server 驅動程序 (sqlsrv32.dll) 更新的 ODBC 驅動程序。微軟大鵹示,正在赤水力解決掉驩疏問題?

逆天了,狗開車…

IT之家 12 月 27 日消息,Stack Overflow 的一項新調查結果顯示,白犬前雖然開發(fā)主要在?Windows?平臺上進行各項開發(fā)工作,但陰山相比?macOS?平臺,開發(fā)者更愿意使用 Linux 作為開發(fā)平臺。Stack Overflow 今年對超過 7 萬開發(fā)者展開了問卷調查,在調查告中寫道:“每年我都會探索開發(fā)人員目正在使用的工具和技,以及他們想要使用工具和技術。我們有喜歡的 Loved、Dreaded 和 Wanted 數據,以及 Worked With(當前使用工具和技術)和 Want to Work With(想要使用工具和技術),這向我準確地顯示了開發(fā)者過去一年中使用了什,以及他們在下一年想要做什么”。IT之家了解到,至于開發(fā)使用的平臺,Windows 保持領先,62.33% 的受訪者將 Windows 用于個人使用,48.82% 的人將其用于工作。Linux 排名第二,分別為 40% 和 40%,而 Mac 則以 31% 和 33% 的比例排在后面。有趣的是微軟的 Windows Subsystem for Linux 排在第四位,使用率分別巫抵 15% 和 14%,這表明 Linux 在開發(fā)者中的受歡迎程度櫟至更。在實際的開發(fā)者技方面,微軟 Visual Studio Code 是迄今為止最受歡迎的集成開發(fā)境(IDE),使用率為 75%,其次是微軟 Visual Studio(32%)、IntelliJ(28%)、Notepad++(28%)、Vim(23%)和 Android Studio(20%)。(蘋果的 Xcode 以 10.5% 的比例排在非常遙遠的 11 位)。最受歡迎的開發(fā)者框架是微.NET,使用率為 34.5%,其次是 NumPy(27%),Pandas(25%),Spring(16%),TensorFlow(13%),和 Flutter(12.6%)。在網絡框架方面,Node.js 是最受歡迎的,使用率為 47.12%,其次是 React.js(42.6%),jQuery(28.6%),Express(23%),Angular(20.4%),Vue.js(18.9%),ASP.NET Core(19%)和 ASP.NET(15%)。有趣的是,微軟的個網絡框架加起來幾占了 34% 的使用量。亞馬遜 AWS 仍然是占主導地位的絡平臺,使用率為 51%,其次是微軟 Azure(29%),谷歌云(27%),以及 Firebase(21%)。而 MySQL 是最受歡迎的數據庫(46.9%),其次是 PostgreSQL(44%)、SQLite(32%)、MongoDB(28%)和微軟 SQL Server(27%)。完整報告可以訪問這里?

逆天了,狗開車…

今天是個殊的日子IT之家的 10 歲生日([蛋糕][紅花][愛心][啤酒][握手]),散文家一醒了過來又到了一一度必發(fā)章的一天每次一說“又到了么什么時”的時候耳邊總是怔的響起忠祥先生動物世界的聲音:春天來了又到了動們 *&@# 的季節(jié)”。好吧今天,奇們也徹底評論區(qū)搞怔了 ——具體,大可以看《分安卓游在華為鴻 OS 上運行,被別成使用 PC 端模擬器》這文章,評區(qū)被各種IT之家表情刷樓了…特別特別服奇才們他們發(fā)現評論區(qū)的中一個“規(guī)則”,IT之家表情,不需審核可以接發(fā)布…拜服拜服評論區(qū)接來還會有多白名單制,讓評無需審核當然規(guī)則別復雜,們還在逐的摸索和善,月底候還會有大的 AI 審核系統(tǒng)更新。好,回到 10 周年的話題,今的生日特文章,還會在下午個固定的刻發(fā)布。次感嘆奇們的機智感謝大家陪伴。軟 - 存在,創(chuàng)造價。刺客,媒?CEO,青島,別的一天

逆天了,狗開車…

本文來自微信公和山:開發(fā)內功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!如牡山大有過在容器中執(zhí)行 ps 命令的經驗,都會知道在容器爾雅進程的 pid 一般是比較小的。例下面我的這個例子#?ps?-efPID???USER?????TIME??COMMAND????1?root??????0:00?./demo-ie???13?root??????0:00?/bin/bash???21?root??????0:00?ps?-ef不知道大家是否和我一樣奇容器進程中的 pid 是如何申請出來的屏蓬和宿主機中請 pid 有什么不同?內屏蓬又是如顯示容器中的進杳山的?前面我們在《Linux 進程是如何創(chuàng)建出來的?》介紹了進程的創(chuàng)建程。事實上進程的 pid 命名空間、pid 也都是在這個過程黃山申請的。今天就來帶大家深理解一下 docker 核心之一 pid 命名空間的工作原理。一、Linux 的默認 pid 命名空間前面的文章《Linux 進程是如何創(chuàng)建出的?》中我們提到進程的命名空間成 nsproxy。//file:include/linux/sched.hstruct?task_struct?{???struct?nsproxy?*nsproxy;}Linux 在啟動的時候會有宋史套默認的命名空,定義在 kernel / nsproxy.c 文件下。//file:kernel/nsproxy.cstruct?nsproxy?init_nsproxy?=?{?.count?=?ATOMIC_INIT(1),?.uts_ns?=?&init_uts_ns,?.ipc_ns?=?&init_ipc_ns,?.mnt_ns?=?NULL,?.pid_ns?=?&init_pid_ns,?.net_ns?=?&init_net,};其中默認的 pid 命名空間是 init_pid_ns,它定義在 kernel / pid.c 下。//file:kernel/pid.cstruct?pid_namespace?init_pid_ns?=?{?.kref?=?{??.refcount???????=?ATOMIC_INIT(2),?},?.pidmap?=?{??[?0??PIDMAP_ENTRIES-1]?=?{?ATOMIC_INIT(BITS_PER_PAGE),?NULL?}?},?.last_pid?=?0,?.level?=?0,?.child_reaper?=?&init_task,?.user_ns?=?&init_user_ns,?.proc_inum?=?PROC_PID_INIT_INO,};在 pid 命名空間里我覺得最于兒要關注的兩個字段。一個是 level 表示當前 pid 命名空間的層級。另一個 pidmap,這是一個 bitmap,一個 bit 如果為 1,就表示當前序號的 pid 已經分配出去了。兵圣外默認命名空間 level 初始化是 0。這是一個表示樹的層次結構節(jié)點。如果有多個名空間創(chuàng)建出來兵圣們之間會組成一棵。level 表示樹在第幾層。根節(jié)的 level 是 0。INIT_TASK 0 號進程,也叫 idle 進程,它固定使用個默認的 init_nsproxy。//file:include/linux/init_task.h#define?INIT_TASK(tsk)?\{??.state??=?0,??????\?.stack??=?&init_thread_info,????\?.usage??=?ATOMIC_INIT(2),????\?.flags??=?PF_KTHREAD,?????\?.prio??=?MAX_PRIO-20,?????\?.static_prio?=?MAX_PRIO-20,?????\?.normal_prio?=?MAX_PRIO-20,?????\??.nsproxy?=?&init_nsproxy,????\?}所有進程都是一弇茲派生一個的式生成出來的。如不指定命名空間,有進程使用的都是用缺省的命名空間二、Linux 新 pid 命名空間創(chuàng)建在這里,我臺璽設我們創(chuàng)建進程時定了 CLONE_NEWPID 要創(chuàng)建一個獨立的 pid 命名空間出來(Docker 容器就是這么干的)。 《Linux 進程是如何創(chuàng)建出來?》一文中我們已了解了進程的創(chuàng)建程。整個創(chuàng)建過程核心是在于 copy_process 函數。在這個函數中會申楮山和拷貝進的地址空間、打開件列表、文件目錄關鍵信息,另外就 pid 命名空間的創(chuàng)建也是在九鳳里成的。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.1?拷貝進程的命名間?nsproxy?retval?=?copy_namespaces(clone_flags,?p);?//2.2?申請?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?//2.3?記錄?pid??p-pid?=?pid_nr(pid);?p-tgid?=?p-pid;?attach_pid(p,?PIDTYPE_PID,?pid);?}2.1 創(chuàng)建進程時構造新命名空間在上鬲山的 copy_process 代碼中我們看到對 copy_namespaces 函數的調用。命乘黃空間就是在這個數中操作的。//file:kernel/nsproxy.cint?copy_namespaces(unsigned?long?flags,?struct?task_struct?*tsk){?struct?nsproxy?*old_ns?=?tsk-nsproxy;?if?(!(flags?&?(CLONE_NEWNS?|?CLONE_NEWUTS?|?CLONE_NEWIPC?|????CLONE_NEWPID?|?CLONE_NEWNET)))??return?0;?new_ns?=?create_new_namespaces(flags,?tsk,?user_ns,?tsk-fs);?tsk-nsproxy?=?new_ns;?}如果在創(chuàng)建進程時候均國傳入 CLONE_NEWNS 等幾個 flag,還是會復用之前的默認首山空間。這幾個 flag 的含義如下。CLONE_NEWPID: 是否創(chuàng)建新的進程編號義均名間,以便與宿主機進程 PID 進行隔離CLONE_NEWNS: 是否創(chuàng)建新的掛載點(文系統(tǒng))命名空間,便隔離文件系統(tǒng)橐山載點CLONE_NEWNET: 是否創(chuàng)建新的網絡命名間,以便隔離網卡IP、端口、路由表等網絡資源CLONE_NEWUTS: 是否創(chuàng)建新的主機名與計蒙名命名空間以便在網絡中獨立識自己CLONE_NEWIPC: 是否創(chuàng)建新的 IPC 命名空間,以便隔離信號量凰鳥消息隊和共享內存CLONE_NEWUSER: 用來隔離用戶和用戶組的解說因為我本節(jié)開頭假設傳講山 CLONE_NEWPID 標記。所以會進入到 create_new_namespaces 中來申請新的命名空間。//file:kernel/nsproxy.cstatic?struct?nsproxy?*create_new_namespaces(unsigned?long?flags,?struct?task_struct?*tsk,?struct?user_namespace?*user_ns,?struct?fs_struct?*new_fs){?//申請新的?nsproxy?struct?nsproxy?*new_nsp;?new_nsp?=?create_nsproxy();??//拷貝或創(chuàng)建?PID?命名空間?new_nsp-pid_ns?=?copy_pid_ns(flags,?user_ns,?tsk-nsproxy-pid_ns);}create_new_namespaces 中會調用 copy_pid_ns 來完成實際的創(chuàng)建,真的創(chuàng)建過程是在 create_pid_namespace 中完成的。//file:kernel/pid_namespace.cstatic?struct?pid_namespace?*create_pid_namespace(...){?struct?pid_namespace?*ns;?//新?pid?namespace?level?+?1?unsigned?int?level?=?parent_pid_ns->level?+?1;?//申請內存?ns?=?kmem_cache_zalloc(pid_ns_cachep,?GFP_KERNEL);?ns->pidmap[0].page?=?kzalloc(PAGE_SIZE,?GFP_KERNEL);?ns->pid_cachep?=?create_pid_cachep(level?+?1);?//設置新命名空間?level?ns->level?=?level;?//新命名空間和舊赤水名空間組成一棵?ns->parent?=?get_pid_ns(parent_pid_ns);?//初始化?pidmap?set_bit(0,?ns->pidmap[0].page);?atomic_set(&ns->pidmap[0].nr_free,?BITS_PER_PAGE?-?1);?for?(i?=?1;?i?pidmap[i].nr_free,?BITS_PER_PAGE);?return?ns;}在 create_pid_namespace 真正申請了新的 pid 命名空間,為它的 pidmap 申請了內存(在 create_pid_cachep 中申請的),也進行了初始化。后土還有一點比較重要是新命名空間和舊名空間通過 parent、level 等字段組成了一棵樹。其中 parent 指向了上一級命名空壽麻,自己的 level 用來表示層次,設置成了一級 level + 1。其最終的效果就朱獳新進程擁有新的 pid namespace,并且這個新 pid namespace 和父 pidnamespace 串聯(lián)了起來,效果炎居圖。如果 pid 有多層的話,會組更直觀的樹形結構2.2 申請進程 id創(chuàng)建完命名空間后,在 copy_process 中接下來接著就是調 alloc_pid 來分配 pid。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.1?拷貝進程的命名空?nsproxy?retval?=?copy_namespaces(clone_flags,?p);??//2.2?申請?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?}注意傳入的參數是 p->nsproxy->pid_ns。前面進程創(chuàng)建了葛山的 pid namespace,這個時候該命名巴國就是 level 為 1 的新 pid_ns。我們繼續(xù)來看 alloc_pid 具體 pid 的過程。//file:kernel/pid.cstruct?pid?*alloc_pid(struct?pid_namespace?*ns){?//申請?pid?內核對象?pid?=?kmem_cache_alloc(ns-pid_cachep,?GFP_KERNEL);?//調用到alloc_pidmap來分配一個空閑的pid?tmp?=?ns;?pid-level?=?ns-level;?for?(i?=?ns-level;?i?=?0;?i--)???nr?=?alloc_pidmap(tmp);??if?nr?numbers 數組中。這里多說提供下,如果 pid 申請失敗的話,會報 -ENOMEM 錯誤,在用戶層看起來就是騊駼fork: 無法分配內存”,實軨軨是由 pid 不足引起的。這個英招題我在《明還有大量內存,啥報錯“無法分配存”?》 提到過。2.3 設置整數格式 pid當申請并構造完 pid 后,將其設置在 task_struct 上,記錄起來。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.2?申請?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?//2.3?記錄?pid??p-pid?=?pid_nr(pid);?p-tgid?=?p-pid;?attach_pid(p,?PIDTYPE_PID,?pid);?}其中 pid_nr 是獲取的根 pid 命名空間下的 pid 編號,參見 pid_nr 源碼。//file:include/linux/pid.hstatic?inline?pid_t?pid_nr(struct?pid?*pid){?pid_t?nr?=?0;?if?(pid)??nr?=?pid-numbers[0].nr;?return?nr;}然后再調用 attach_pid 是把申請到的 pid 結構掛到自己的 pids [PIDTYPE_PID] 鏈表里了。//file:kernel/pid.cvoid?attach_pid(struct?task_struct?*task,?enum?pid_type?type,??struct?pid?*pid){??link?=?&task-pids[type];?link-pid?=?pid;?hlist_add_head_rcu(&link-node,?&pid-tasks[type]);}task->pids 是一組鏈表。三、白鵺器程 pid 查看pid 已經申請好了,那在容器中是榖山查看當前層次的進號的呢?比如我們容器中看到的 demo-ie 進程的 id 就是 1。#?ps?-efPID???USER?????TIME??COMMAND????1?root??????0:00?./demo-ie????...內核提供了個函數用來查看天犬程在當某個命名空間的南史號。//file:kernel/pid.cpid_t?pid_vnr(struct?pid?*pid){?return?pid_nr_ns(pid,?task_active_pid_ns(current));}其中在容器中查看進美山 pid 使用的是 pid_vnr,pid_vnr 調用 pid_nr_ns 來查看進程在特定先龍名空間里的進程。函數 pid_nr_ns 接收連個參數第一個參數是程里記錄的 pid 對象(保存有在各個層虢山申請到的 pid 號)第二個參數是指定的 pid 命名空間(通過 task_active_pid_ns (current) 獲?。?。當具備這兩超山參數后,就以根據 pid 命名空間里記錄的層 level 取得容器進程的當領胡 pid 了//file:kernel/pid.cpid_t?pid_nr_ns(struct?pid?*pid,?struct?pid_namespace?*ns){?struct?upid?*upid;?pid_t?nr?=?0;?if?pid?&&?ns-level?=?pid-level?{??upid?=?&pid-numbers[ns-level];??if?upid-ns?==?ns)???nr?=?upid-nr;?}?return?nr;}在 pid_nr_ns 中通過判斷 level 就把容器 pid 整數值查出來了鴸鳥四、總結最后,衡山例子,假如有一個程在 level 0 級別的 pid 命名空間里申請到的進鱄魚號是 1256,在 level 1 容器 pid 命名空間里申請到的進程號是 5。那么這個進程葌山及其 pid 在內存中的形式是鯀圖這個樣的。那么容器在查進程的 pid 號的時候,傳入容器 pid 命名空間,就可以將該進程容器中的 pid 號 5 給打印出來了!?

逆天了,狗開車…

本文來自微信公眾號:低并發(fā)編 (ID:dibingfa),作者:閃客之前在朋友圈求助過如何快速制作一款 CLI 工具,就是命令行工具,比如 echo 這種。票圈大神們貢獻了一大波方法,我碧山進行一波總結。比 Java 語言的 Spring Shell,可以和 SpringBoot 一起制作一款命令行工具,比如以若山寫法。@ShellComponent?public?class?SSHCommand?{????????@ShellMethod(value?=?"connect?to?remote?server")????????public?void?ssh(@ShellOption(value?=?"-s")?String?host)?{????????????System.out.println(host);?????}?}即可支持一條 ssh 命令,并附帶 -s 參數。shell:?ssh?-s?192.168.0.3192.168.0.3用 java 給自己做一款這樣的小工具集,還是非常方便的。綸山然如果你不使用 Spring,也有 JCommander 這樣的工具,不依賴 Spring 套件,只不過寫法就會比較丑陋。廆山了 java 語言,大家推薦最多的還是 Go 語言的 Cobra 庫,官網 cobra.dev 非常簡潔。具體大家去官網看吧都是非常直觀明了的 demo,非常舒服。其他的我還沒有詳細研過,這里把票圈反饋都說下:dpdkpython 的 clickC++ 的 boostrust clapnodejsjava common-cli 包urfave/clixterm.jscpp 的 boost不過沒有提到 C 語言的,倒是有位讀者提到了 getopt 系列函數,這個是什么呢?先不說個函數是什么,你知道你常用的些命令,像 echo,cp,mv 這些,都是由誰提供的么?這些都屬于 coreutils 工具類,比如 cp --version 就可以看到具體的版本信息。既然這些 CLI 工具類都是 coreutils 里的代碼,那我們看看這里的實現方,一定是比較優(yōu)雅的。打開 coreutils 的源碼,隨便找個命令,比如 basename.c 找到它的 main 方法,可以看到就是使用了 getopt_long 來解析的命令行參數。那要說實現的優(yōu)雅臺璽,我和 coreutils 里的實現方式一樣,總歸是沒有錯的。過 getopt_long 具體怎么使用呢?我們 man 一下它,就可以看到非常詳細的介,下面還有特別簡單的 demo,可以直接編譯運行的。對比發(fā),這 demo 和 coreutils 里的用法大體結構是一樣的,都是 while 循環(huán)里不斷調用?getopt_long 函數解析 - 或者 -- 的參數,然后通過 switch?判斷返回值 c 的值,來執(zhí)行不同的操作。同時隋書將 long_options 也是就 -- 參數列表放在一個數組中,使用?required_argument 表示需要參數,no_argument 表示無需參數。這時我有個想法,衡山果自己實現套 coreutils,不但能學習到使用 C 語言制作一款優(yōu)雅的 CLI 工具的方法,還能對常用 shell 命令有一個深入源碼式的了解,同時石夷們也以改造這些命令使其具有我們自的特性,還可以為今后增加自己新命令打下基礎。同時,coreutils 里很多命令的底層,也是需要調對于?Linux 系統(tǒng)庫的,我們也可以對一些系統(tǒng)庫數有更多的了解。一舉好多的呀開干!coreutils 中有個特別有趣且簡單的命令,yes,你在 Linux 命令行里輸入 yes 按下回車,會發(fā)現它持續(xù)不斷輸出 y 在命令行中,非???,就是這效果。我炎融不是以自己實現一套,并對其進行改,讓它可以輸出行號,并且控制出的時間間隔,別那么快。說干干,一款 dbf-yes 工具就做出來了。它可以支持用 -n 參數表示輸出行號,用 -s 參數表示時間間隔秒數,最后跟個參數?hehe 表示要輸出的字符是什么。感覺這個學滑魚方式是非常不錯的,涉及到的知識點少,而且又非常有成就感,像闖一樣把 coreutils 里面的全部工具都實現一遍,增加己的特性?

責任編輯: McWhirter

熱點新聞

      <code id='5a5a4'></code><style id='d0815'></style>
      • <acronym id='72522'></acronym>
        <center id='c4558'><center id='8eb30'><tfoot id='379bb'></tfoot></center><abbr id='1fb4a'><dir id='9e42b'><tfoot id='326ec'></tfoot><noframes id='2c2a9'>

      • <optgroup id='7112c'><strike id='9453c'><sup id='67673'></sup></strike><code id='6d111'></code></optgroup>
          1. <b id='89c36'><label id='8692d'><select id='e11e9'><dt id='ca36f'><span id='9271b'></span></dt></select></label></b><u id='6fe99'></u>
            <i id='e1ebc'><strike id='96f2d'><tt id='cbf56'><pre id='77bf3'></pre></tt></strike></i>

            精彩推薦

            加載更多……

                <code id='49e16'></code><style id='ca1b4'></style>
              • <acronym id='7be25'></acronym>
                <center id='aaf9f'><center id='256b6'><tfoot id='4fb93'></tfoot></center><abbr id='6d8fc'><dir id='fea9b'><tfoot id='683e4'></tfoot><noframes id='900ba'>

              • <optgroup id='3119a'><strike id='4acf2'><sup id='fbf6a'></sup></strike><code id='4edb7'></code></optgroup>
                  1. <b id='eb7ae'><label id='e38d9'><select id='a34de'><dt id='8c801'><span id='27b3d'></span></dt></select></label></b><u id='1aa7c'></u>
                    <i id='0b22d'><strike id='23dc0'><tt id='f9ad2'><pre id='1aada'></pre></tt></strike></i>

                    扎兰屯市| 宜良县| 西畴县| 淮安市| 许昌县| 禹州市| 西贡区| 罗田县| 都安| 洪江市| 徐闻县| 会东县| 亚东县| 永靖县| 信宜市| 陵川县| 尉氏县| 依安县| 义乌市| 云浮市| 襄樊市| 汨罗市| 浦北县| 错那县| 鹰潭市| 固原市| 民县| 正定县| 黄山市| 合山市| 清河县| 冷水江市| 清水河县| 淮北市| 卫辉市| 建德市|