[問題] ~ 家目錄問題

看板Linux作者 (DanzYam)時間10年前 (2015/07/09 19:24), 10年前編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
大家好,想跟大家請教下~的問題(或許是指令的問題?) 我有個檔案的絕對路徑是 /home/me/doc/hahaha.voc 我想替換檔案中的內文所以我下了 sed 's///g' ~/doc/hahaha.voc (程式沒問題) 後來發現我有100個.voc檔都需要修改 所以我把100個檔做成一個清單(~/doc/list),如下 ~/doc/xxx.voc ~/doc/ooo.voc ~/doc/kkk.voc ~/doc/www.voc ~/doc/ttt.voc etc... 用 cat ./list |xargs -i sed 's///g' {} 結果系統跟我說 ~/doc/xxx.voc not a file or directory ~/doc/ooo.voc not a file or directory ~/doc/kkk.voc -- ~/doc/www.voc -- ~/doc/ttt.voc -- 後來我把list中的所有路徑換成絕對路徑,程式就可以跑了 想請問下這是為什麼呢? 照 cat ./list |xargs -i sed 's///g' {} 的寫法,不是會拆成以下指令嗎? sed 's///g' ~/doc/kkk.voc sed 's///g' ~/doc/ooo.voc sed 's///g' ~/doc/xxx.voc etc... 煩請提點,謝謝Orz Dan -- 不過是人 http://www.facebook.com/twaiting -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.66.243.96 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1436441083.A.641.html

07/09 19:29, , 1F
~是shell的expension, xargs不認得
07/09 19:29, 1F

07/09 19:41, , 2F
在shell上打~的時候,他會偷偷幫你換成家目錄位置
07/09 19:41, 2F

07/09 19:41, , 3F
所以事實上真的傳給程式的是家目錄的位置,不是~
07/09 19:41, 3F
非常感謝二位,又學了一課:)))) ※ 編輯: cherubx (124.155.187.95), 07/09/2015 20:29:17
文章代碼(AID): #1LdbdxP1 (Linux)
文章代碼(AID): #1LdbdxP1 (Linux)