파일크기를 0으로 하고 싶습니다(콘쉘에서)

koddakgi의 이미지

로그화일이 *.out 입니다
크기가 너무 커지다 보니 한번씩 백업 받은후 크기로 0으로
하고 싶습니다.
다음과 같이 쉘을 만들었습니다.
for OUTFILE in `ls -l *.out | awk '{print $9}'`
do
cat /dev/null > $OUFILE
echo " $OUTFILE SIZE ZERO ....."
done

루프안에서 "cat /dev/null > $OUFILE" 구문이 전혀
먹혀들지 않는군요
루프 밖에서 하면 잘되는데...
그리고 혹시 파일사이즈를 0으로하는 다른 방법이 있나요?
그러 수고들 하십시요.

mooore의 이미지

touch를 사용하는 것은 어떨런지요?
백업받고 전에 파일 지우고 touch로 같은 파일 이름 생성하고.

그냥 참고하시길.

별은 바라보는 자에게 빛을 준다.

whatisid의 이미지

올려주신 코드가 현재 서버에 있는 코드와 동일한

거라고 하면.....

혹시... 오타 때문은 아닐까요??

cat /dev/null > $OUFILE

$OUTFILE이 되어야 맞을것 같습니다. :wink:

eseo의 이미지

koddakgi wrote:

for OUTFILE in `ls -l *.out | awk '{print $9}'`
do
cat /dev/null > $OUFILE
echo " $OUTFILE SIZE ZERO ....."
done

루프안에서 "cat /dev/null > $OUFILE" 구문이 전혀
먹혀들지 않는군요
루프 밖에서 하면 잘되는데...

오타 같군요. (OUFILE -> OUTFILE)
그리고, 단순히 ls *out으로 치면 되지 않을까요?

#! /bin/sh 

for OUTFILE in `ls *out`
do
    cat /dev/null > $OUTFILE
    echo "$OUTFILE SIZE ZERO ....."
done

---
배려하는 마음을 갖자.

cjh의 이미지

truncate 명령어가 있으면 그걸 쓰세요.

--
익스펙토 페트로눔

koddakgi의 이미지

오타 때문이었군요....
전 어제 오후내내 찾아도 알수가 없더군요
그래서 제가 뭔가 명령을 잘못하고 있늘줄 알고...
질문을 올렸는데... 좀..허탈하군요
그나저나 줼에서는 선언하지 않고 사용하니
이런 오류를 범하지 않나 싶습니다.
이런 오류를 미연에 방지할수 있는 좋은 방법은 없을까요?

여자는 도대체 무엇으로 사는가?

chocoheim의 이미지

지금 o'reilly 에서 나온 bash 책을 보고 있는데,
chapter9 정도에 bash debugging 하는 법이 나오네요.

set option 이나 fake signal의 DEBUG 부분에 대한 bash 관련자료를 찾아보시고 활용하시면,
적당히 편하게 디버깅 하실 수 있을껍니다.

WaitplzplzWait

dubhe의 이미지

#!/bin/sh

for OUTFILE in *.out
do
> $OUTFILE
echo " $OUTFILE SIZE ZERO ....."
done

for의 in에는 그냥 *.out으로 해도 됩니다.
그리고 cat /dev/null보다는 그냥 >로 하면 0으로 쒸어져 버립니다.

koddakgi의 이미지

우선 답변주셔서 감사합니다.
복잡하게 할필요없이 ls *.out 해도 되는군요... ^^
그리고 cat /dev/null 도 > 만 해두 0으로 됩니다.
쉘에대해서 좀더 공부를 해야겠군요.
한가지 더 질문을 하자면
i++과 같은 효과를 내려구
cnt = `expr cnt + 1`
하니 잘 안되는군요.
이참에 쉘 프로그램책을 한권 구입해야되겠군요
추천좀 부탁드립니다.

여자는 도대체 무엇으로 사는가?

dubhe의 이미지

cnt = `expr $cnt + 1`

$cnt로 해야 변수로 인식합니다.

참고로 Linux라면 아마도 seq라는 명령이 있을껍니다.

1부터 100까지 뭘 한다..하면 seq 1 100 이런걸 사용해 보세요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.