[英]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.