The UNIX and Linux Forums  
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
問題のループの は、オブザーバー シェルプログラミングとスクリプティング 2 2008年5月28日 03:43午前
ループ問題 maskot シェルプログラミングとスクリプティング 1 2007年5月25日 05:10午前
問題にループ/削除するsed ? chiru_h シェルプログラミングとスクリプティング 2 2006年8月27日 12:55午後
ループ問題 dhananjaysk シェルプログラミングとスクリプティング 3 2006年3月31日 02:05午後
問題whileループ mridula 高レベルのプログラミング 1 2005年12月11日 11:44午前

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

参加日: 2007年8月
場所:バンガロール
投稿数: 377
ループの問題解決のために

やあ、
私にも私は、ログファイルがログと呼ばれるディレクトリがある。

私はそれを削除する前にファイルをタッチする必要があります。

私はこのようにしています
filestodelete \u003d " *. * *ログ* "ログ

ファイル$でfilestodelete
する
タッチのファイルのファイルを$ $ $ (日付+ % 1 )
$ rm - fをfilestodelete
完了した

ここにタッチ手段それを削除する前にファイルに触れていないされ、動作していません。
この親切に私を助けて。

編集namishtiwariで最終; 2008年1月25日に 09:32午前..
  #2固定リンク)  
Old 2008年1月25日
V3l0 V3l0 is offline
登録ユーザー
  
 

参加日: 2007年11月
場所:ベルギー、フランス
投稿: 70
こんにちは、

まず、ときに" *ログ* "を選択すると、 持っていない "を選択し、 *. *ログ"の最初の選択beacause彼らはすでに!

第二に、なぜ" "を削除する前に、そのファイルに触れるか?

第三に、あなたのスクリプト" filestodelete "は、すべてのファイル"でファイルの( *ログ* | *.ログ* ) "で選択を削除するコマンド" rm - fを$ XXXの" beacauseファイルを削除することができないとされるrunnig

だから、私はあなたのスクリプトを提案する:
コード:
list=$(ls *log*)

for file in $list
do
    cp $file $file.$(date +%a)
    rm -f $file
done
  #3固定リンク)  
Old 2008年1月25日
namishtiwari namishtiwari is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2007年8月
場所:バンガロール
投稿数: 377
引用:
当初の投稿 V3l0 View Post
こんにちは、

まず、ときに" *ログ* "を選択すると、 持っていない "を選択し、 *. *ログ"の最初の選択beacause彼らはすでに!

第二に、なぜ" "を削除する前に、そのファイルに触れるか?

第三に、あなたのスクリプト" filestodelete "は、すべてのファイル"でファイルの( *ログ* | *.ログ* ) "で選択を削除するコマンド" rm - fを$ XXXの" beacauseファイルを削除することができないとされるrunnig

だから、私はあなたのスクリプトを提案する:
コード:
list=$(ls *log*)

for file in $list
do
    cp $file $file.$(date +%a)
    rm -f $file
done
あなたは私を与えた良いsuggestions.Thanks ..

それ以外の理由はいくつかのサイズを増加する場合、不必要に触れることなく、ファイルは削除it.cpもう一度再起動する必要がありますaaplication空のファイルを選択する必要が実行中のプロセスがそのファイルをタッチする必要があります。
  #4固定リンク)  
Old 2008年1月25日
danmero danmero is offline Forum Advisor  
  
 

参加日: 2007年11月
場所: 45.48から73.63
投稿数:1428
引用:
当初の投稿 namishtiwari View Post
コード:
list=$(ls *log*)

for file in $list
do
    cp $file $file.$(date +%a)
    rm -f $file
done
それ以外の理由はいくつかのサイズを増加する場合、不必要に触れることなく、ファイルは削除it.cpもう一度再起動する必要がありますaaplication空のファイルを選択する必要が実行中のプロセスがそのファイルをタッチする必要があります。
どのようなファイルを移動し、新しいものに触れるについて:
コード:
for file in `ls *log*`
do
    mv $file $file.`date +%a` && touch $file || echo "Can not backup $file";
done
  #5固定リンク)  
Old 2008年1月25日
namishtiwari namishtiwari is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2007年8月
場所:バンガロール
投稿数: 377
すべての返信をお寄せいただきありがとうございます。

しかし、ここで問題が-私のスクリプトは次のようなものだ-

コード:
BackupLocation="$OPTARG"
                if [[ $BackupLocation != *backup ]]; then
                        echo "Appending backup subdirectories"
                        BackupLocation=$BackupLocation/backup
                        mkdir -p $BackupLocation >/dev/null 2>&1
                        if [[ $? != 0 ]];then
                        echo "First Create The Directory And Then Take backup"
                        fi
                        cd $FileLocation
                        pwd
                        cp -R $FilesToDelete $BackupLocation
                       list=$(ls *log*)
                        for files in $list
                        do
                             rm -f $files
                          touch $files.$(date +%a)
                                                 done
                else
                        mkdir -p $BackupLocation >/dev/null 2>&1
                        cp -R $FilesToDelete $BackupLocation
                        for files in $list
                        do
                          rm -f $files
                          touch $files.$(date +%a)
                          
                        done
                if [[ ! -d $BackupLocation ]]; then
                echo "Unable to make backup directory: $BackupLocation"
                        if [[ $IsCronJob -eq 1 ]]; then
                          SendMiddleTierCleanMail "Middletierclean error message" $mt_clean_errfile
                        fi
ここでもう一度、この日を付加して、もう一度、ファイル名の後に再びファイルを触れるようになる>
ansrpt26529.log.Fri.Fri.Fri.Fri
しかし、私のようにはしたくない。
私はそれを削除し、ファイルのバックアップを取るに触れるのfile.thenする必要があります。
パターンを削除するには、ファイルのために一致しています
リスト\u003d $ ( ls *ログ* )
これはすべてのファイルを選択することですが、私はこのようにできるだけansrpt26529.log.Friはしたくないようなansrpt26529.log.Fri.Fri.Fri.Fri 。
パターンと一致するので、ここに私、この問題を解決するためにいくつかの提案を与える異なる場合があります。

編集namishtiwariで最終; 2008年1月25日に 12:41午後..
  #6固定リンク)  
Old 2008年1月25日
danmero danmero is offline Forum Advisor  
  
 

参加日: 2007年11月
場所: 45.48から73.63
投稿数:1428
何について
コード:
                       
list=$(ls *log.???)
for files in $list
do
    rm -f $files
    touch `echo $files | sed 's [^.]*$  '``date +%a`
done

編集danmeroで最終; 2008年1月25日に 01:05午後..
Closed Thread

ブックマーク

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

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

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

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




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


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

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