The UNIX and Linux Forums  


Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > UNIXのダミー質問と回答のため
Googleのunix.com



UNIXのダミー質問と回答のため もしUNIXやLinuxについての質問があれば、ここに投稿してください。すべてのUNIXおよびLinux初心者歓迎!

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
bashの:日付およびそれらのファイルを細断して下さい cbismuth シェルプログラミングとスクリプティング 2 2005年6月13日 12:20午後

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2006年7月17日
jack1981 jack1981 is offline
登録ユーザー
  
 

参加日: 2006年7月
投稿: 42
rmを使用してヘルプの代わりに細断

やあ、

私は、私にRMを模倣しようとしているコマンドを実行する問題がかなりよくカップルバーのこのスクリプトを記述して、この私rmディレクトリを使用できないことを意味、私にしてミュージックビデオをinted rmファイルを移動するために使用する私のスクリプトのエイリアス永久に削除するというよりもごみ箱フォルダに移動します。

この問題:使用しているときに削除されたフォルダには、このディレクトリのすべての準備を私はエラーが存在するディレクトリを移動するミュージックビデオ、私は千切りにし、私rmdirは、ツリー内のすべての空のディレクトリを削除するために使用するすべてのファイルを計画しています。

私のスクリプトはこちら


コード:

#!/bin/bash
# Ai program to emulate the "rm" command in UNIX.
# Created by Michael Kelly
# Last revison 12/07/2006


# INITIALIZE VARIABLES
NO_ARGS=0
FLAG_R=""
FLAG_F_I=""
FLAG_V=""
TRASH=$HOME/deleted

# FUNCTIONS

function errors() {
if [ "$#" -eq  "$NO_ARGS" ] ; then
      echo "rm: too few arguments"
      echo "Try \`rm --help' for more information."
      exit 0
elif [[  ! -f "$1"  && ! -d "$1"   ]] ; then
      echo "rm: cannot remove $ARG : no such file or directory"
      exit 0
elif [[ -d $ARG  &&  "$FLAG_R" = ""  ]] ; then
      echo "rm: \`$ARG' is a directory"
      exit 0
else
     checkExisting $1
fi
}

function verbose () {
if [ "$FLAG_V" = "v" ] ; then
echo "removing \`$1'"
fi
}

function interactive () {
echo -n "rm: remove $1 ?"
     read A
     if [[ "$A" = [Yy] ]] ; then
     remove $1
     else
     exit 0
fi
}

function writePro () {
if ! [ -w  "$1" ] ; then
echo -n "rm: remove write-protected file \`$*'?"
     read A
     if [[ "$A" = [Yy] ]] ; then
     delete $1
     fi
else
     delete $1
fi

}
function checkExisting ()
{
if [ -d "$TRASH/$1" ] || [ -f "$TRASH/$1" ]; then


     shred -fp $TRASH/$1 2>/dev/null
     rmdir $TRASH/$1 2>dev/null
     writePro $1

else
     writePro $1

fi
}

function force () {

mv -f $1 $TRASH 2>/dev/null
verbose $1
}


function remove () {
mv  $1 $TRASH 2>/dev/null
verbose $1
}

function delete() {
if [ "$FLAG_F_I" = "-i" ] &&  [ -w  "$@" ] ; then
   interactive $1
elif [ "$FLAG_F_I" = "-f"  ] ; then
   force $1
elif [ "$FLAG_R" = "-R"  ] ; then
   recursive $1
else
   remove $1
fi

}

# Getops

while getopts :rRfvi o
do    case $o in
           r|R) FLAG_R=-R
             ;;
             f) FLAG_F_I=-f
             ;;
             v) FLAG_V=-v
             ;;
             i) FLAG_F_I=-i
             ;;
             *) echo "rm: invalid option -$1"
                echo "try \`rm --help' for more information"
                exit 0
      esac
done
shift `expr $OPTIND - 1`

if ! [ -d "$HOME/deleted" ] ; then
     mkdir $HOME/delete

else
   for ARG in $*
   do
   errors $ARG
   done
fi
if [ $# -eq $NO_ARGS ] ; then
errors
fi

私は太字で、私recrusivelyしたいファイルを細断し、問題の機能を強調しているのと同じ方法rmdir空のディレクトリを使用しています。

誰か、このコマンドを推奨:


コード:
find -type f -exec shred -u '{}' \;

recursivleyがズタズタにはどうすればshreding開始ポイントを指定するのですか?私はそれ以降は自分のホームディレクトリにあるすべてのファイルを消去する前に、この使用されます。

かつて私は、私が、細断rmdirの代わりに、誰でもそれに私は助言することも同様のコマンドを使用してソートすることがありますか?

よろしく

ジャック
  #2固定リンク)  
Old 2006年7月17日
Hitori's Avatar
ひとり Hitori is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2006年6月
投稿数: 360
理由だけではなく

' $ごみ箱/ $ 1 - Fタイプの細断の- exec - ū見つける( ) ' \ ;
  #3固定リンク)  
Old 2006年7月17日
jack1981 jack1981 is offline
登録ユーザー
  
 

参加日: 2006年7月
投稿: 42
乾杯!

だから私は空のディレクトリを削除する方法についても同様の方法でrmdirを使用するのでしょうか?

ジャック
  #4固定リンク)  
Old 2006年7月17日
jack1981 jack1981 is offline
登録ユーザー
  
 

参加日: 2006年7月
投稿: 42
引用:
当初の投稿 ひとり
理由だけではなく

' $ごみ箱/ $ 1 - Fタイプの細断の- exec - ū見つける( ) ' \ ;

また、もうちょっと良いのUnixに新しい可能性があるような、このコマンドを説明し、誰か他の人に勧められ、私は実際には、 '実行理解dont ( ) ' \

おかげで再び

ジャック
  #5固定リンク)  
Old 2006年7月17日
jack1981 jack1981 is offline
登録ユーザー
  
 

参加日: 2006年7月
投稿: 42
私は自分のスクリプトで実行しているの引数が不明の- exec
  #6固定リンク)  
Old 2006年7月17日
Hitori's Avatar
ひとり Hitori is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2006年6月
投稿数: 360
引用:
当初の投稿 jack1981
私は自分のスクリプトで実行しているの引数が不明の- exec
<space>は忘れないでください:

' $ごみ箱/ $ 1 - Fタイプの細断の- exec - ū見つける( ) '<space>は\ ;

これは、検索( )ディレクトリを再帰的に$ごみ箱/ $ 1のファイルを( -タイプメス)と、コマンドが発見された各ファイルに対して実行 細断- u 'を( ) ' ここでマクロを( )のファイル名で置き換えられます

使用できるタイプのディレクトリを検索エに

チェックアウト( 1 ) (男1を検索する)を見つける
  #7固定リンク)  
Old 2006年7月17日
jack1981 jack1981 is offline
登録ユーザー
  
 

参加日: 2006年7月
投稿: 42
こんにちは、ありがとうございます。

しかし私はまだ、スペースも、自分のコードのようです:このエラーが表示される

' $ごみ箱/ $ 1 -タイプFの- exec千切りフー見つける( ) ' \ 2 >は/ dev / nullを

そのアイディアなぜですか?
Closed Thread

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 07:13午前


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0