paste 指令可以用來合併檔案 |
阿舍上面提到的問題,是阿舍之前在整合不同系統的報表的時候,經常會遇到的情況哩 ! 每次都要花掉阿舍不少時間來處理哩 ! 結果,沒想到,這個讓阿舍有點困擾的事,竟然在 Ubuntu 或 Linux 的系統上,只要用 1 ~ 2 行的指令就可以完美解決哩 ! ( 這也就是為什麼阿舍會開始花時間來好好學習 Ubuntu / Linux 上的指令的原故哩 ! )
在 Ubuntu 和大部份的 Linux 作業系統上,都有提供一個叫做「paste」的指令,這個指令的用途就是把一個檔案的內容「貼到」另一個檔案的內容的「右邊」,所以,阿舍就可以利用這個功能來把一個檔案的資料併到另一個檔案裡囉 !
paste 指令最簡單的用法,就是在 paste 指令的後面加上要合併的檔案名稱們 ( 複數,表示可合併 N 個檔案,至於到底可以一次合併多少個,阿舍也還沒試過哩 ! ),然後,paste 指令就會去把這些檔案依序給合併起來囉 ! 以阿舍有一個姓名檔和一個費用檔 (如上圖) 要合併為例,阿舍只要用下面這行指令就可以合併完成了。
paste name.txt fee.txt > name_fee.txt
用 paste 檔案合併完成的檔案,預設會是用 TAB 字元來做區隔的,因此,阿舍的檔案在合併後,就會變成下面這個樣子,但是,如果阿舍想要改成用一個空白字元或逗號來做區隔的話,那要怎麼辦呢?這個時候就會需要利用到 paste 指令的「d」選項囉 !
阿舍合併後的結果 |
這個 paste 指令的「d」選項是用來告訴 paste 指令要用那什麼符號來分隔合併後的資料,也就是用來指定要用什麼符號來取代掉預設的 TAB 符號來區隔資料的意思,所以,如果阿舍想要用空白字元來區隔時,就可以用下面的第一行指令,而想用逗號時,就可以用下面的第二行或第三行指令哩 !
paste -d" " name.txt fee.txt
paste -d, name.txt fee.txt
paste -d"," name.txt fee.txt
「d」選項後面所指定的區隔符號不一定要用雙引號,也就是 " " 符號包起來,但是,如果遇到像是空白字元的話,那就一定要用雙引號的哩 ! 另外,paste 指令只會取「d」選項後面的第一個字元來當做分隔號,所以,請不要和阿舍一樣,想嘗試用這個「d」選項來放多個東西在兩組資料之間哩 !... 呵 !
指定分隔字元的方式 |
上圖就是阿舍用空白字元和逗號做區隔所跑出來的檔案內容哩 !
推薦閱讀
- 問題沒解決嗎? 更多的 Ubuntu 教學在 這裡
- Prompt Injection: 提示詞注入安全漏洞
- 二款 Mac 無痛安裝的 Stable Diffusion 軟體
- 用 AI 寫部落格文章好不好 ?
- 沒有免費的 Midjourney 和 Colab 又不想花錢怎麼辦 ?
- 不學 Prompt 技巧也能善用 ChatGPT 的簡單方法
- 企業 AI 應用:不只是聊天機器人
- Automatic 比 Automatic1111 更好用 ? 都是 Stable Diffusion WebUI
- Stable Diffusion 的 /describe 圖生文功能
- AI 畫出讓人可怖的美圖 !
有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁
沒有留言 :
張貼留言
歡迎留言提問和討論 .... 😁