作者 主題: pipe >> 的小問題  (閱讀 3783 次)

0 會員 與 1 訪客 正在閱讀本文。

jjchiou

  • 懷疑的國中生
  • **
  • 文章數: 68
    • 檢視個人資料
pipe >> 的小問題
« 於: 2004-01-05 14:23 »
我寫了一個小script
其中"echo ",$username" | cat >> /etc/group "
想將變數附在檔案最後
但是卻會附在下一行
請問如何解決

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17484
    • 檢視個人資料
    • http://www.study-area.org
pipe >> 的小問題
« 回覆 #1 於: 2004-01-05 15:09 »
嗯?
請問"附在檔案最後"與"會附在下一行"差在哪?能舉個實例來看看嗎?

jjchiou

  • 懷疑的國中生
  • **
  • 文章數: 68
    • 檢視個人資料
pipe >> 的小問題
« 回覆 #2 於: 2004-01-05 15:32 »
就以上面為例
我將使用者加在某個group後便可限制使用者權限
加在下一行就沒有加入這群組了

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17484
    • 檢視個人資料
    • http://www.study-area.org
pipe >> 的小問題
« 回覆 #3 於: 2004-01-05 15:57 »
哦,你是說加在同一行是不是?

或許你還要多做一些處理哦...
代碼: [選擇]

g_file=/etc/gfile
g_bak=${g_file}.bak
groupname=users   #請修改為你自己的group
username=u1,u2    #請修改為你自己的user

cat $g_file > $g_bak
oldmembers=$(grep $groupname $gfile | sed 's/^.*://')
newmembers=",$username"
sed "s/$oldmembers/&$newmembers/" $g_bak > $g_file