Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> Linux心得分享:cp命令

Linux心得分享:cp命令

日期:2017/2/7 16:55:13      編輯:Linux教程

關於如何把文件傳回本地,我最初的想法是打包為一個tar文件,但這樣勢必導致磁盤空間縮水。比如我的VPS磁盤大小是30G,那麼我至多只能下載15G的數據,因為打包後還會生成一個15G壓縮包。同樣直接把文件拷貝到/var/www也會有類似弊端。假如剪切過去,就不能做種了。而且手動把文件移來移去,讓人心裡很不舒服。假如直接就把incoming設在/var/www下呢?太不安全!因為/var/www是任何人都能訪問的。

就沒兩全其美的法子麼。起初我想寫一個bash腳本,於是開始看鳥哥的linux教材。沒想到看著看著發現了更有趣的東西。一行命令解決問題。

Linux的cp命令非常強大,能建立類似於windows中快捷方式的文件,但這文件又不局於快捷方式的指向作用,而是和源文件有同樣的權限,能力。

開始我嘗試: cp -s -r /root/.mldonkey/incoming/files/*.* /var/www/downloads/
失敗,因為雖然建立了捷徑檔案,但在http:\\ip\目錄 中訪問是空的,可能apache不能識別軟捷徑檔。

cp -l -r /root/.mldonkey/incoming/files/*.* /var/www/downloads/
成功!現在就能直接在http:\\ip\目錄下載了!而且不占用多余的磁盤空間。拷貝之前df -hl查看,使用6%。拷貝後查看,依然是6%。

執行過一次後,在命令前加\,就可以跳過默認的-i參數,不用確認每個覆蓋動作。嘗試ln命令在兩個目錄間產生鏈接,如此一來就能一勞永逸了,但遺憾的是無法把硬鏈接指向目錄,而apache又不識別軟鏈接。於是如此一來你的盒子就完美了嗎?完美了嗎?接下來你又想折騰什麼呢?追記:如何驗證文件完整性。

md5sum在linux中是一個默認附件的組件,直接使用就OK
md5sum /root/.mldonkey/incoming/files/*.* > /var/www/downloads/XXXX.md5

在GBK下內容都正常。不過生成的md5文件裡頭全是絕對路徑囧,我man了一下好像也沒有關於絕對路徑相對路徑的參數,如果想在本地使用的話就只能用notepad打開編輯一下把路徑刪掉了。

不過稍微上手一點之後,linux真是個非常非常棒的系統。感覺一切都在掌握,而不是像win一樣,面對一個五光十色的小盒子,卻不明白它內部是怎麼運作的,一出點問題,按哪裡也解決不了就開始手忙腳亂。

Copyright © Windows教程網 All Rights Reserved