RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

linux命令輕松把單個工具變成批量執(zhí)行工具

汽車玩家 ? 來源:沙茶敏碎碎念 ? 作者:沙茶敏碎碎念 ? 2020-01-21 17:36 ? 次閱讀

我們經常遇到這樣的業(yè)務場景,我們開發(fā)了一個線上工具,需要在Linux操作系統(tǒng)下面執(zhí)行處理某些事情,例如我們開發(fā)了一個將用戶某個活動數(shù)據(jù)清0的工具,命令如下:。/clearTools -v 12306,意思是將用戶id為12306的使用次數(shù)清零。

這里有些同學可能會問,為什么我們需要開發(fā)工具,而不是直接從數(shù)據(jù)庫中將次數(shù)清0,這是因為在生產環(huán)境中,任何一項業(yè)務都可能耦合眾多業(yè)務邏輯,不是簡單處理一張表就行,所以我們常常需要開發(fā)工具。

有一天,因為一些不知名的原因,反正肯定不是代碼的bug,產品給了一批用戶的id,需要我們將他們的參與次數(shù)重置,可是我們原來的工具只是處理單個用戶的,如何快速地將工具改成可以批量執(zhí)行多個用戶呢?

方法一

我們可以修改工具的代碼,讓其讀入一個文件,然后再依次執(zhí)行,把原有的單個工具改成批量工具。這個方法雖然很好,但是難免顯得有些太笨,作為一個極客程序員,這是難以接受的。

方法二

我們寫一個shell腳本,在腳本里面讀入文件,然后依次執(zhí)行。這種方法雖然不用修改代碼,但是也要寫新的代碼,雖然比上述方法更加可用,但是還是不夠極客。

方法三

使用Linux的xargs命令,xargs命令是給其他命令傳遞參數(shù)的一個過濾器,也是組合多個命令的一個工具。它擅長將標準輸入數(shù)據(jù)轉換成命令行參數(shù),xargs能夠處理管道或者stdin并將其轉換成特定命令的命令參數(shù)。

上述的例子,我們只要這么做,cat list.txt | xargs -I {} 。/clearTools -v {} 即可。在這個命令中,對于輸出的每一行,都會匹配-I參數(shù)后面的花括號,然后將其替換成讀入的文件行。

總結

是不是非常的簡單,我們只要一行簡單的命令行,就可以輕松的把單個工具修改變成批量執(zhí)行的工具,大大提高了生產效率。怎么樣,學會了么?歡迎關注我,我們一起學習共同進步。大家的支持是我繼續(xù)嘮嗑的動力。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11292

    瀏覽量

    209326
收藏 人收藏

    評論

    相關推薦

    用于分析可執(zhí)行程序和內存轉儲的命令工具介紹

    Axf Tool 是桃芯科技一個用于分析可執(zhí)行程序和內存轉儲的命令工具。該工具已集成到 ingWizard 的項目快捷菜單里。
    的頭像 發(fā)表于 11-03 17:00 ?1267次閱讀
    用于分析可<b class='flag-5'>執(zhí)行</b>程序和內存轉儲的<b class='flag-5'>命令</b>行<b class='flag-5'>工具</b>介紹

    linux下使用restclient工具測試restful services接口

    原來一直使用restclient-ui工具,是圖形界面的,操作起來很麻煩。想用shell腳本批量調用來執(zhí)行用例,于是就找restclient工具有沒有命令行的,上網搜了下,果然有。下載
    發(fā)表于 07-08 08:21

    Linux系統(tǒng)中常見的壓縮命令工具概述

    ,有必要對需要備份的數(shù)據(jù)進行歸檔和壓縮。#其實歸檔相當于多個文件打包一樣。壓縮著進一步降低打包好的歸檔文件占用的空間,充分提高備份介質的利用率。Linux系統(tǒng)中常見的壓縮命令工具包括
    發(fā)表于 07-09 07:30

    Linux命令工具

    Linux 新手往往對命令行心存畏懼。部分原因是因為需要記憶大量的命令,畢竟掌握命令是高效使用命令行的前提不幸的是,學習這些
    發(fā)表于 07-25 08:10

    linux命令行下載工具

    wget是linux下常用的命令行下載工具,是Linux用戶是必不可少的工具,尤其對于網絡管理員,經常要下載一些軟件。而tget是一個簡單的
    發(fā)表于 07-25 07:02

    如何輕松記住 Linux 命令

    分享一篇來自于Linux中國的文章,給正在入門的小伙伴一點點幫助:如何輕松記住 Linux 命令對于Linux的使用者來說,無論是菜鳥階段還
    發(fā)表于 05-18 14:26

    linux命令大全

    書中收集了豐富的Linux命令,是Linux技術開發(fā)者的好工具
    發(fā)表于 08-08 18:20 ?3次下載

    學習記憶Linux命令的5大工具解析

    Linux 新手往往對命令行心存畏懼。部分原因是因為需要記憶大量的命令,畢竟掌握命令是高效使用命令行的前提。不幸的是,學習這些
    的頭像 發(fā)表于 12-25 17:24 ?4619次閱讀
    學習記憶<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>的5大<b class='flag-5'>工具</b>解析

    監(jiān)控網絡使用情況的Linux命令工具

    本文介紹了一些可以用來監(jiān)控網絡使用情況的Linux命令工具。這些工具可以監(jiān)控通過網絡接口傳輸?shù)臄?shù)據(jù),并測量目前哪些數(shù)據(jù)所傳輸?shù)乃俣?。入站流量和出站流量分開來顯示。
    的頭像 發(fā)表于 10-29 10:49 ?4703次閱讀

    Linux網絡狀態(tài)工具ss命令使用詳解

    很多流行的Linux發(fā)行版都支持ss以及很多監(jiān)控工具使用ss命令.熟悉這個工具有助于您更好的發(fā)現(xiàn)與解決系統(tǒng)性能問題.本人強烈建議使用ss命令
    的頭像 發(fā)表于 11-12 15:43 ?4316次閱讀

    Linux命令大全搜索工具大全

    550 多個 Linux 命令,內容包含 Linux 命令手冊、詳解、學習,值得收藏的 Linux 命令
    發(fā)表于 01-05 08:00 ?4次下載

    如何Linux工具里的“軍刀”BusyBox移植到RT-Thread Smart?

    BusyBox 是一個集成了數(shù)百個常用Linux/Unix命令工具的軟件。BusyBox 包含了一些簡單的工具,例如ls、cat和echo等等,還包含了一些更大...
    發(fā)表于 01-25 17:43 ?1次下載
    如何<b class='flag-5'>把</b><b class='flag-5'>Linux</b><b class='flag-5'>工具</b>里的“軍刀”BusyBox移植到RT-Thread Smart?

    6個已棄用的Linux命令和您應該使用的替代工具

    Linux 提供了大量的命令行實用程序來執(zhí)行各種任務。然而,隨著時間的推移,其中一些工具已經過時并被其他替代命令
    的頭像 發(fā)表于 01-29 11:41 ?2044次閱讀

    如何在Linux中高效運行終端命令

    Linux 終端是一個功能強大的工具,允許您使用命令執(zhí)行各種系統(tǒng)操作。文件操作、程序管理和服務自動化是您可以使用 shell 命令高效
    的頭像 發(fā)表于 03-20 09:39 ?715次閱讀

    如何在Linux中高效運行終端命令

    Linux 終端是一個功能強大的工具,允許您使用命令執(zhí)行各種系統(tǒng)操作。文件操作、程序管理和服務自動化是您可以使用 shell 命令高效
    的頭像 發(fā)表于 04-13 10:34 ?673次閱讀
    RM新时代网站-首页