因為在 Linux Kernel 內對 command-line arguments 限製了記億體的使用,就例如在一個目錄下有很多檔案,如果用 "cp * /home/user/",那便會出現這個問題,以下列出兩個解決辦法:
1. 分開多個指令執行: 可以將檔案分成幾個指令執行,例如:
cp [0-9]* /path/to/
cp [a-l]* /path/to/
cp [m-z]* /path/to/
2. 使用 find 指令: 另一個方法是用 find 指令,可以一句便完成:
find /file_from/* -type f -name ‘*’ -exec cp {} /path/to/. \;
以上指令會將 /file_from/ 目錄下的所有檔案覆製到 /path/to/ 下面。
P.S. 如果想修改 kernel 以解決問題,可以開啟在 kernel source 下面的 include/linux/binfmts.h 檔案,在開頭的位置裡面有一行 "#define MAX_ARG_PAGES 32",將 32 改成更大的數值,例如 64 或 128,然後重新編譯 kernel。
忘記從哪轉貼的了 Q_Q
2006-10-19
訂閱:
張貼留言 (Atom)
Configuring HAProxy as a proxy for Cargo
Configuring HAProxy as a proxy for Cargo (the Rust package manager) in a corporate network environment involves several steps. Here's a ...
-
人生總是難免會遇到要重開機的時候, tmux 在重開機之後原本的 session 是會消失的, 身為一個追求極致開發環境的人, 當然不允許自己手動解決這個問題(重新設置 tmux window/pane) 但究竟該怎麼做,才能夠自動恢復重開機之前的 tmux 和 vim ...
-
如何確保每一份不同人寫出來的 C/C++ 程式碼的排版都一樣? 除了努力 follow coding standard 或是 code review 時認真一點之外 clang-format 這工具提供了自動排版的功能! 最基本的用法(一切用預設) cla...
-
在解釋程式碼或是 demo 的時候, 用滑鼠來導覽畫面總是可以帶來一些便利, 以往非常好用的 tmux + vim 在 tmux 升級到 2.1 之後, 需要做一些調整,以下簡單記錄我前陣子所調整的部分。 tmux 在 2.1 之前,我們通常會打開底下四個選項 se...
沒有留言:
張貼留言