[分享]以管理员身份操作文件

重复贴和参考价值不大的帖子,版主维护
回复
头像
liujingjing5
帖子: 512
注册时间: 2006-10-12 1:21
送出感谢: 0
接收感谢: 0

[分享]以管理员身份操作文件

#1

帖子 liujingjing5 » 2008-01-10 21:57

有些文件必须以管理员身份操作,只有在终端里打命令,很麻烦。
本人初学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 次。
tongttt
帖子: 444
注册时间: 2007-11-27 22:20
送出感谢: 0
接收感谢: 0
联系:

#2

帖子 tongttt » 2008-01-11 10:47

学习一下。
回复

回到 “归档贴”