![Bash 讀入文件清單 將文件內容輸出到一個文件](https://rvso.com/image/164731/Bash%20%E8%AE%80%E5%85%A5%E6%96%87%E4%BB%B6%E6%B8%85%E5%96%AE%20%E5%B0%87%E6%96%87%E4%BB%B6%E5%85%A7%E5%AE%B9%E8%BC%B8%E5%87%BA%E5%88%B0%E4%B8%80%E5%80%8B%E6%96%87%E4%BB%B6.png)
使用該find
命令搜尋具有特定擴展名的所有程式檔案並將內容附加到大型“codebase.txt”中效果很好。問題是,同一個程式有很多版本(而且我只想要每個程式的一個唯一副本)。解析 find 指令中的列表,刪除 .v1、.v2。 .v3 等同一程式的文件,因此我有一個大約 300 個的緊湊乾淨的列表(幾乎是唯一的文件名),比 1,000 多個有所減少。使用讀取檔案清單的各種 cat 命令輸出到「sourcecode.txt」會導致諸如此類的錯誤,"invalid use of 'r'"
我甚至沒有使用該r
開關。
我知道這在 Redhat Enterprise Server 7 上的 bash 中很容易,但我嘗試的一切都失敗了。
我認為這就是我正在尋找的,但返回一個錯誤,指出輸入無法識別。
#!/bin/bash
input="filelist.txt"
while IFS= read -r line
do
echo "$line". #append to codebase.txt???? - but how????
done < "$input"