2012-04-20 82 views
0

我之前沒有做過任何shell腳本,但我正在尋找一些腳本來解決一些我無法實現的功能。基本上我想要做的就像git:創建命令行/ bash腳本並將信息保存在文件中

在一個文件夾中創建一個文件,該文件將存儲該文件的文件ID列表以及用戶可以輸入的信息。

所以基本上文件將是這樣的:

id   info 
----   --------- 
123   File number 1 
13453   Another awesome file. 

這主要是我想做的事情。我只是在尋找建議,如果我應該使用數據庫或文件,然後每次用戶想要的信息循環通過文件?我打算或者用bash或者C來編寫腳本,但是可以提供任何建議。非常感謝。

+2

這還是太寬了,真的可以提出任何具體的建議; sqlite3是一個極好的小型數據庫,使用起來很簡單,但文件的擴展屬性可以更好地完成這項工作 - 它們與文件更緊密地聯繫在一起,並且可以在簡單的重命名後保留下來。而'id'會比你想象的要麻煩得多 - 文件可能會被完全修改,並且仍然具有相同的inode編號或者完全相同,並且根據程序修改文件獲得不同的inode編號。 – sarnold 2012-04-20 02:27:02

+0

@sarnold。嗯,謝謝。我不知道我可以添加屬性到文件。這聽起來像是我想要做的更多。我似乎無法找到如何做到這一點。基本上我只想提供一些關於用戶可以通過命令行添加的文件的文本信息。 – Jonovono 2012-04-20 02:32:04

+0

至少在Ubuntu上,'apt-get install attr'會給你一個包含一些擴展屬性處理工具的包;一旦安裝,「man 5 attr」瞭解更多信息。 – sarnold 2012-04-20 02:36:17

回答

1

如果您打算有很多用戶,平面文件可能會很快變得太低效。這就是關係數據庫可以派上用場的地方。如果你不想一路走下去(比如用MySQL),請查看sqlite。 sqlite將這些表存儲在一個文件中,但仍然是一個完整的數據庫引擎。