簡體   English   中英

從文件夾中的所有文件中提取 200 行

[英]Extracting 200 lines from all the files in a folder

我有一個包含很多 CSV 文件的文件夾。 還有子文件夾。 對於每個這樣的文件,我需要提取前 200 行(以制作 db 子樣本),用這些行創建另一個文件。 所以我會有幾個新文件,每個文件都有 200 行。 我需要在 Linux Ubuntu 並使用 OS shell 命令完成此任務。 有沒有辦法做到這一點? 提前致謝。

此行可以滿足您的需求:

find . -type f -name "*.csv" -print|xargs -I@ sh -c 'head -n200 @ > @.headed'

這條線由不同的部分組成:

  1. 找到必須“帶頭”的文件
  2. find命令的output只是文件列表
  3. xargs 命令獲取文件列表並在其上運行命令通過 sh -c 選項
  4. 顯示文件的第一行 200 並將其放入帶有“headed”擴展名的文件名中的命令

有了這一行,您就有了一個解決方案,該解決方案可以擴展到您編寫的那個附近的另一個用例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM