Jump to content


Photo

Dúvidas Quanto A Duas Tarefas Básicas


  • Faça o login para participar
6 replies to this topic

#1 Nicholas Pufal

Nicholas Pufal

    Impossível: só existe até alguém duvidar e provar o contrário.

  • Usuários
  • 1655 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre

Posted 19/07/2008, 22:19

Eu sei que dá para criar um comando que acessa o "explorer" to Linux como root (por falar nisso, não lembro esse comando, usei há um tempão atrás), mas tem outro jeito de deletar uma pasta sem ser pelo terminal ou dessa forma que eu falei?

Eu tentei deletar aqui uma, e me apareceu que não tinha direitos suficientes. Deletar pelo terminal uma pasta acho muito fora de mão... Como vocês fazem? Tem jeito de configurar isso para que quando eu pressione "Delete" estando com uma pasta selecionada ele delete?

Outra coisa, sempre que vou mudar uma coisa mesmo que mínima como um tema, me aparece uma janela "Enter your password to performe adm tasks". Tem jeito de não precisar passar por essa tela? (sem ser usando o usado root logado)

Instalei aqui via VM (depois de rolos que deu com dual-boot) e as únicas coisas que me perturbam são essas mesmo (fazia um tempinho que não mexia mais com Linux).

Valeu!
BLOG Touché Criação - Vamos trocar idéias? -> http://blog.touchecriacao.com.br/
// Links úteis: Busca || Regras
// Não respondo dúvidas via mensagem privada. Use o fórum para buscar ou perguntar.

#2 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 19/07/2008, 23:24

A senha de administração do sistema só é solicitada em tarefas administrativas, em tarefas como troca de temas não é solicitada nenhuma senha, caso esteja solicitando, verifique o perfil do seu usuário.

Quanto a apagar pastas e arquivos em outros diretórios por terminal gráfico, isto varia... você pode incluir o seu usuário no grupo root, mas isto também não vai resolver todos os casos.
------
Mero mortal!

#3 Nicholas Pufal

Nicholas Pufal

    Impossível: só existe até alguém duvidar e provar o contrário.

  • Usuários
  • 1655 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre

Posted 20/07/2008, 10:25

E não tem como alterar para não aparecer essa janela com a senha administrativa? Ou deixar a senha branco, enfim, alguma maneira que torne mais prático.
BLOG Touché Criação - Vamos trocar idéias? -> http://blog.touchecriacao.com.br/
// Links úteis: Busca || Regras
// Não respondo dúvidas via mensagem privada. Use o fórum para buscar ou perguntar.

#4 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 23/07/2008, 10:46

Desconheço...

Vamos aguardar por novas respostas.
------
Mero mortal!

#5 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 18/08/2008, 12:18

Diz aí qual a distribuição... É Gnome-based? ;)

[]’s :D Até mais

#6 Nicholas Pufal

Nicholas Pufal

    Impossível: só existe até alguém duvidar e provar o contrário.

  • Usuários
  • 1655 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre

Posted 18/08/2008, 13:35

É o Ubuntu Hardy Heron ;)
BLOG Touché Criação - Vamos trocar idéias? -> http://blog.touchecriacao.com.br/
// Links úteis: Busca || Regras
// Não respondo dúvidas via mensagem privada. Use o fórum para buscar ou perguntar.

#7 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 23/08/2008, 23:59

Bem, como o Gnome usa o Nautilus como gerenciador de arquivos, você pode usar scripts, os chamados nautilus-scripts. :)

Criei 2 scripts pra tu, um para excluir pra lixeira e outro para excluir permanentemente. Eis eles:

Excluir

#! /usr/bin/env bash
#----------------------------------------------------------------------#
# nsTrasher v0.8.0 - Move files to trash							   #
# Copyright (C) 2008  Paulo Freitas						  #
#																	  #
# This program is free software; you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation; either version 3 of the License, or	#
# (at your option) any later version.								  #
#																	  #
# This program is distributed in the hope that it will be useful,	  #
# but WITHOUT ANY WARRANTY; without even the implied warranty of	   #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the		 #
# GNU General Public License for more details.						 #
#																	  #
# You should have received a copy of the GNU General Public License	#
# along with this program; if not, see <http://www.gnu.org/licenses/>. #
#----------------------------------------------------------------------#

function move_item
{
  basename=$(basename "$1")
  copy_n=2

  while [ -e "$HOME/.Trash/${basename}${suffix}" ]; do
	suffix=" ($copy_n)"
	copy_n=`expr $copy_n + 1`
  done

  mv "$1" "$HOME/.Trash/${basename}${suffix}" \
	|| gksudo mv "$1" "$HOME/.Trash/${basename}${suffix}"
}

export LANG

IFS=$'\n'
trash_name=$(gconftool-2 -g /apps/nautilus/desktop/trash_icon_name)
items=($(echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"))
count="${#items[*]}"

case ${LANG%.*} in
  en_US)
	msgDeleteFileTitle='Delete File'
	msgDeleteFileText="Are you sure you want to move this file to the $trash_name?"
	msgDeleteDirectoryTitle='Delete Directory'
	msgDeleteDirectoryText="Are you sure you want to move this directory to the $trash_name?"
	msgDeleteMultipleItemsTitle='Delete Multiple Items'
	msgDeleteMultipleItemsText="Are you sure you want to move these $count items to the $trash_name?"
	msgDeleteSymlinkTitle='Delete Symbolic Link'
	msgDeleteSymlinkText="Are you sure you want to move this symbolic link to the $trash_name?"$'\n\nDeleting this symbolic link does not remove the underlying file but only the link itself.'
	msgErrorWhileDeletingTitle='Error while deleting'
	msgErrorWhileDeletingText='The specified location is not supported.'
	msgDeletingTitle='Recycling'
	msgDeletingText='Recycling'
;;
  pt_BR)
	msgDeleteDirectoryTitle='Excluir Diretório'
	msgDeleteDirectoryText="Tem certeza de que deseja mover este diretório para a $trash_name?"
	msgDeleteFileTitle='Excluir Arquivo'
	msgDeleteFileText="Tem certeza de que deseja mover este arquivo para a $trash_name?"
	msgDeleteMultipleItemsTitle='Excluir Vários Arquivos'
	msgDeleteMultipleItemsText="Tem certeza de que deseja mover estes $count itens para a $trash_name?"
	msgDeleteSymlinkTitle='Excluir Link Simbólico'
	msgDeleteSymlinkText="Tem certeza de que deseja mover este link simbólico para a $trash_name?"$'\n\nA exclusão do link simbólico não remove seu destino, apenas o próprio link.'
	msgErrorWhileDeletingTitle='Erro ao excluir'
	msgErrorWhileDeletingText='A localização especificada não é suportada.'
	msgDeletingTitle='Reciclando'
	msgDeletingText='Reciclando'
;;
esac

# Check for zenity

if [ ! -e '/usr/bin/zenity' ]; then
  gksudo apt-get install -y zenity
fi

if [[ $count -gt 1 ]]; then
  zenity --question \
	--title=$msgDeleteMultipleItemsTitle --text=$msgDeleteMultipleItemsText --width=495 \
  || exit

  (
	progress=0

	for item in "${items[@]}"; do
	  echo "$(($progress * 100 / $count))"
	  echo "# $msgDeletingText: $item"
	  move_item "$item"
	  progress=`expr $progress + 1`
	done
  ) |
  zenity --progress \
	--title=$msgDeletingTitle --text=$msgDeletingText --auto-close --auto-kill
else
  item="${items[0]}"

  if [ -h "$item" ]; then
	zenity --question \
	  --title=$msgDeleteSymlinkTitle --text=$msgDeleteSymlinkText --width=495 \
	|| exit
  elif [ -d "$item" ]; then
	zenity --question \
	  --title=$msgDeleteDirectoryTitle --text=$msgDeleteDirectoryText --width=495 \
	|| exit
  elif [ -f "$item" ]; then
	zenity --question \
	  --title=$msgDeleteFileTitle --text=$msgDeleteFileText --width=495 \
	|| exit
  else
	zenity --warning \
	  --title=$msgErrorWhileDeletingTitle --text=$msgErrorWhileDeletingText --width=495
	exit
  fi

  move_item "$item"
fi
Excluir permanentemente

#! /usr/bin/env bash
#----------------------------------------------------------------------#
# nsCleaner v0.8.0 - Delete files permanently						  #
# Copyright (C) 2008  Paulo Freitas						  #
#																	  #
# This program is free software; you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation; either version 3 of the License, or	#
# (at your option) any later version.								  #
#																	  #
# This program is distributed in the hope that it will be useful,	  #
# but WITHOUT ANY WARRANTY; without even the implied warranty of	   #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the		 #
# GNU General Public License for more details.						 #
#																	  #
# You should have received a copy of the GNU General Public License	#
# along with this program; if not, see <http://www.gnu.org/licenses/>. #
#----------------------------------------------------------------------#

function delete_item
{
  basename=$(basename "$1")
  copy_n=2

  while [ -e "$HOME/.Trash/${basename}${suffix}" ]; do
	suffix=" ($copy_n)"
	copy_n=`expr $copy_n + 1`
  done

  rm -rf "$1" \
	|| gksudo rm -rf "$1"
}

export LANG

IFS=$'\n'
items=($(echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"))
count="${#items[*]}"

case ${LANG%.*} in
  en_US)
	msgDeleteFileTitle='Delete File'
	msgDeleteFileText='Are you sure you want to permanently delete this file?'
	msgDeleteDirectoryTitle='Delete Directory'
	msgDeleteDirectoryText='Are you sure you want to permanently delete this directory?'
	msgDeleteMultipleItemsTitle='Delete Multiple Items'
	msgDeleteMultipleItemsText="Are you sure you want to permanently delete these $count items?"
	msgDeleteSymlinkTitle='Delete Symbolic Link'
	msgDeleteSymlinkText=$'Are you sure you want to permanently delete this symbolic link?\n\nDeleting this symbolic link does not remove the underlying file but only the link itself.'
	msgErrorWhileDeletingTitle='Error while deleting'
	msgErrorWhileDeletingText='The specified location is not supported.'
	msgDeletingTitle='Deleting'
	msgDeletingText='Deleting'
;;
  pt_BR)
	msgDeleteDirectoryTitle='Excluir Diretório'
	msgDeleteDirectoryText='Tem certeza de que deseja excluir este diretório permanentemente?'
	msgDeleteFileTitle='Excluir Arquivo'
	msgDeleteFileText='Tem certeza de que deseja excluir este arquivo permanentemente?'
	msgDeleteMultipleItemsTitle='Excluir Vários Arquivos'
	msgDeleteMultipleItemsText="Tem certeza de que deseja excluir permanentemente estes $count itens?"
	msgDeleteSymlinkTitle='Excluir Link Simbólico'
	msgDeleteSymlinkText=$'Tem certeza de que deseja excluir este link simbólico permanentemente?\n\nA exclusão do link simbólico não remove seu destino, apenas o próprio link.'
	msgErrorWhileDeletingTitle='Erro ao excluir'
	msgErrorWhileDeletingText='A localização especificada não é suportada.'
	msgDeletingTitle='Excluindo'
	msgDeletingText='Excluindo'
;;
esac

# Check for zenity

if [ ! -e '/usr/bin/zenity' ]; then
  gksudo apt-get install -y zenity
fi

if [[ $count -gt 1 ]]; then
  zenity --question \
	--title=$msgDeleteMultipleItemsTitle --text=$msgDeleteMultipleItemsText --width=495 \
  || exit

  (
	progress=0

	for item in "${items[@]}"; do
	  echo "$(($progress * 100 / $count))"
	  echo "# $msgDeletingText: $item"
	  delete_item "$item"
	  progress=`expr $progress + 1`
	done
  ) |
  zenity --progress \
	--title=$msgDeletingTitle --text=$msgDeletingText --auto-close --auto-kill
else
  item="${items[0]}"

  if [ -h "$item" ]; then
	zenity --question \
	  --title=$msgDeleteSymlinkTitle --text=$msgDeleteSymlinkText --width=495 \
	|| exit
  elif [ -d "$item" ]; then
	zenity --question \
	  --title=$msgDeleteDirectoryTitle --text=$msgDeleteDirectoryText --width=495 \
	|| exit
  elif [ -f "$item" ]; then
	zenity --question \
	  --title=$msgDeleteFileTitle --text=$msgDeleteFileText --width=495 \
	|| exit
  else
	zenity --warning \
	  --title=$msgErrorWhileDeletingTitle --text=$msgErrorWhileDeletingText --width=495
	exit
  fi

  delete_item "$item"
fi
Para usá-los, basta salvar ambos no diretório ~/.gnome2/nautilus-scripts, com estes nomes mesmo, sem extensão. Feito isto, abra o terminal, vá ao mesmo diretório, e dê chmod +x neles. Pronto, instalado. :)

Ambos funcionaram adequadamente em testes locais, contudo, para que o script que move pra lixeira funcione, é necessário existir o diretório .Trash no diretório pessoal.

Para quem usa GNOME 2.24 ou superior (caso do Ubuntu 8.04), é preciso criar um link simbólico no diretório pessoal apontando o mesmo para ~/.local/share/Trash/files, já que a partir de então o esquema da lixeira mudou*. Assim: ln -s ~/.local/share/Trash/files ~/.Trash ;-)

Espero que sejam úteis. :)

* Apesar de ter o diferencial de poder excluir arquivos sem permissão, excluir por estes scripts é diferente de excluir pelo próprio Nautilus, uma vez que o GNOME, a partir da versão 2.24, recorda a origem dos arquivos removidos - o que não é possível com estes scripts.

[]’s :DAté mais




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq