当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 2 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [分享]以管理员身份操作文件
帖子发表于 : 2008-01-10 21:57 
头像

注册: 2006-10-12 1:21
帖子: 512
送出感谢: 0 次
接收感谢: 0 次
有些文件必须以管理员身份操作,只有在终端里打命令,很麻烦。
本人初学shell,写了一个小脚本,可以在图形界面下以管理员身份复制剪切删除。将附件里的脚本文件复制到~/.gnome2/nautilus-scripts/。在右键->脚本 中即可见。
进入sudo文件夹。
代码:
cp ./* ~/.gnome2/nautilus-scripts/

我也是新手,有bug的地方请见谅。
若想以管理员身份运行程序,请安装
代码:
sudo apt-get install nautilus-gksu nautilus-open-terminal

PS:水平有限,将脚本贴出,粘贴重名时不知道如何改名,只能覆盖,请高手完善。
代码:
#!/bin/bash
#复制
echo $PWD > ~/.gnome2/nautilus-scripts/copyfile
echo 0 >> ~/.gnome2/nautilus-scripts/copyfile
i=0
c=$#
while [ $i -lt $c ]
do
   echo $1 >> ~/.gnome2/nautilus-scripts/copyfile
   shift
   i=$[$i+1]
done

代码:
#!/bin/bash
#粘贴
IFS="
"
todir='.'
i=1
function copy()
{
      if [ $sign -eq 0 ];then
         gksudo "cp -r $fromdir/$fromfile $todir/$tofile"
      else
         gksudo "mv -f $fromdir/$fromfile $todir/$tofile"
      fi
}
for recard in $(cat ~/.gnome2/nautilus-scripts/copyfile)
do
   if [ $i -eq 1 ];then
      fromdir=$(echo $recard | sed 's/\([ ]\+\)/\\ /g')
      i=$[$i+1]
   elif [ $i -eq 2 ];then
      sign=$recard
      i=$[$i+1]
   else
      recard=$(echo $recard | sed 's/\([ ]\+\)/\\ /g')
      fromfile=$recard      
      tofile=$recard
      copy
      gksudo chmod 755 $todir/$tofile
   fi
done

代码:
#!/bin/bash
#删除
dir='.'
for file
do
   file=$(echo $file | sed 's/\([ ]\+\)/\\ /g')
   gksudo "rm -r $dir/$file"
done


附件:
sudo.zip [1.12 KiB]
被下载 10 次


最后由 liujingjing5 编辑于 2008-01-11 11:15,总共编辑了 2 次
页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-01-11 10:47 

注册: 2007-11-27 22:20
帖子: 444
送出感谢: 0 次
接收感谢: 0 次
学习一下。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 2 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译