簡體   English   中英

生成一個 .tab 文件,文件名和路徑由制表符分隔

[英]generate a .tab file with filenames and paths separated by tab

我剛剛開始學習 linux CLI。 我正在使用 snippy 工具來比較需要 .tab 格式文件的多個文件。 此制表符格式的文件應由以制表符 (\\t) 分隔的路徑和文件名組成。

我分別運行了這兩個命令以生成文件名和路徑列表。

find $(pwd)/*.fna > /home/fan/onas/filenames.tab

ls > filenames.tab

但是每當我運行此命令來檢查文件中的選項卡時。 文件中不存在制表符 (\\t)。

cat -vet filenames.tab

我也使用此命令將 \\n 替換為 \\t。 但它在這里不起作用。

sed 's/\n/\t/g' filenames.tab > file2.tab

簡而言之,我正在嘗試生成一個文件,其文件名和路徑由制表符或 .tab 格式分隔。 有人可以幫我解決這個問題嗎? 謝謝

命令printf ...

printf "%s\t" $(ls -A $(pwd)) >files.tab

...格式化ls -A (也是隱藏文件)的輸出,用制表符分隔到 ( > ) files.tab。

如果你的printf也支持-v那么你可以做...

printf -v FILES "%s\t" $(ls -A $(pwd))
echo ${FILES}

但可悲的是標簽丟失了。 將它寫入一個文件,就像第一個例子一樣糾正它......

printf "%s\t" ${FILES} >files.tab

想知道為什么只有一個%s\\t 嗯,它就像一個數組上的foreach 對於空格分隔列表printf中的每個元素,執行%s\\t並丟棄其他空格。

暫無
暫無

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

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