![]() |
Helloやアメリカ合衆国へようこそ! 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午前 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
ループの問題解決のために
やあ、
私にも私は、ログファイルがログと呼ばれるディレクトリがある。 私はそれを削除する前にファイルをタッチする必要があります。 私はこのようにしています filestodelete \u003d " *. * *ログ* "ログ ファイル$でfilestodelete する タッチのファイルのファイルを$ $ $ (日付+ % 1 ) $ rm - fをfilestodelete 完了した ここにタッチ手段それを削除する前にファイルに触れていないされ、動作していません。 この親切に私を助けて。 編集namishtiwariで最終; 2008年1月25日に 09:32午前.. |
|
||||
|
こんにちは、
まず、ときに" *ログ* "を選択すると、 持っていない "を選択し、 *. *ログ"の最初の選択beacause彼らはすでに! 第二に、なぜ" "を削除する前に、そのファイルに触れるか? 第三に、あなたのスクリプト" filestodelete "は、すべてのファイル"でファイルの( *ログ* | *.ログ* ) "で選択を削除するコマンド" rm - fを$ XXXの" beacauseファイルを削除することができないとされるrunnig だから、私はあなたのスクリプトを提案する: コード:
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
|
|
||||
|
すべての返信をお寄せいただきありがとうございます。
しかし、ここで問題が-私のスクリプトは次のようなものだ- コード:
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午後.. |