亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 8253 | 回復: 16
打印 上一主題 下一主題

如何獲取壓縮文件內(nèi)的文件名 [復制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2008-09-01 11:32 |只看該作者 |倒序瀏覽
最近遇到一個問題,從網(wǎng)上找了很久也沒有找到好的覺得辦法。所以上來問問。

上傳文件到LINUX中的某個目錄下面。文件類型為  abc.tar.gz  這個壓縮包內(nèi)有幾個文件。
壓縮包內(nèi)的文件名中包含我需要的時間。所以我得想辦法得到他。我的前輩實現(xiàn)的方式是先
把壓縮包解壓,然后取到文件名,再重新壓縮起來。功能是實現(xiàn)了?墒俏矣X得貌似效率有點低
我想到的辦法是不解壓文件,直接獲取壓縮文件內(nèi)的文件名,然后用這個名字直接修改壓縮包的
名字,這樣就避免了解壓和重新壓縮的操作。

目前遇到的問題是LINUX下是否有辦法在不解壓文件的時候也能或許到壓縮包內(nèi)的文件的名字
我查不到類似的資料。最好是能用C去獲取,有沒有那位知道的? 先謝謝各位了

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
2 [報告]
發(fā)表于 2008-09-01 11:35 |只看該作者
tar ztf abc.tar.gz

論壇徽章:
0
3 [報告]
發(fā)表于 2008-09-01 11:36 |只看該作者
man tar

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
4 [報告]
發(fā)表于 2008-09-01 11:41 |只看該作者
其實我覺得你應該研究一下生成 abc.tar.gz 的那個程序,
看有沒有什么配置項可以直接生成 abc.20080901.tar.gz。

論壇徽章:
0
5 [報告]
發(fā)表于 2008-09-01 11:42 |只看該作者
tar tvf filename.tar

論壇徽章:
0
6 [報告]
發(fā)表于 2008-09-01 12:02 |只看該作者
原帖由 flw 于 2008-9-1 11:35 發(fā)表
tar ztf abc.tar.gz

這個是可以啊~~~
但是用C的SYSTEM()函數(shù)是不是無法接到返回值啊 不知道有沒有TAR函數(shù) 找找看去。

論壇徽章:
0
7 [報告]
發(fā)表于 2008-09-01 12:04 |只看該作者
原帖由 flw 于 2008-9-1 11:41 發(fā)表
其實我覺得你應該研究一下生成 abc.tar.gz 的那個程序,
看有沒有什么配置項可以直接生成 abc.20080901.tar.gz。

我這邊生成文件是很規(guī)矩的,可是還得考慮別人導入文件時修改了文件名,所以只有獲取壓縮文件里面的文件的時間才是最準確的。

如果是用SHELL寫,估計就容易了。可惜只能用C 郁悶....

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
8 [報告]
發(fā)表于 2008-09-01 12:10 |只看該作者
原帖由 No.6 于 2008-9-1 12:04 發(fā)表

我這邊生成文件是很規(guī)矩的,可是還得考慮別人導入文件時修改了文件名,所以只有獲取壓縮文件里面的文件的時間才是最準確的。

如果是用SHELL寫,估計就容易了?上е荒苡肅 郁悶....

嗯,用 shell 寫拿不到獎金,一定要用 C 寫,要把項目做大,最好就像你前輩那樣——這下你知道你前輩是多么的聰明睿智了吧?
先用 C 解壓,再拿出文件名來,然后再重新壓縮,這樣今年的獎金就有著落了。

不過你可以和你上司說,你前輩這樣的做法,成本很高,性能很差,復用性等于 0。
你應該實現(xiàn)一個通用的 tar 函數(shù),不僅僅可以獲取文件名日期的,還可以獲取文件內(nèi)容第一行的,
還得寫 374 個 unit test 以保證 tar 模塊的質(zhì)量,
這樣將來的項目中如果有類似的需求就可以直接拿過來用。

好好干,今年的獎金就全靠這個 task 了。

[ 本帖最后由 flw 于 2008-9-1 12:12 編輯 ]

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
9 [報告]
發(fā)表于 2008-09-01 12:16 |只看該作者
嗯,因為時間緊,任務急,因此你還可以向公司申請一筆加班費,包括打車住宿餐補等相關(guān)費用。
如果是在外地出差的話,還可以申請?zhí)接H費用,嗯,就應該這樣,千萬別 tar ztf abc.tar.gz

論壇徽章:
0
10 [報告]
發(fā)表于 2008-09-01 12:27 |只看該作者
原帖由 flw 于 2008-9-1 12:10 發(fā)表

嗯,用 shell 寫拿不到獎金,一定要用 C 寫,要把項目做大,最好就像你前輩那樣——這下你知道你前輩是多么的聰明睿智了吧?
先用 C 解壓,再拿出文件名來,然后再重新壓縮,這樣今年的獎金就有著落了。

...

受教育了~~~ 不過我之前試了一個比較野蠻的辦法,就是直接用VI去打開壓縮文件,發(fā)現(xiàn)里面第一行從開始就是一個我想要的文件的文件名,
接著又打開了幾個類似的壓縮包,結(jié)果發(fā)現(xiàn)都是一樣的。 太詭異了,難道老天開眼了!

提起我公司那前輩我就上火啊,從我進公司前輩就離開了,從此我就走上了修改他的BUG之路。各種各樣的錯誤。

不過貌似你說這個還真是一個解決辦法,反正手頭沒事,可以試試自己寫一個tar函數(shù)  不知我這小本的學歷是否夠用 查資料去了~~~~
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP