• ベストアンサー

UNIXには直接ファイル操作コマンドありますか?

yunapaの回答

  • yunapa
  • ベストアンサー率56% (18/32)
回答No.4

テキストファイルを数行削除するだけであれば、viで十分足りると思います。通常/binの下にコマンドがあるのでパスを追加しなくても起動すると思います。使用方法としては、vi ファイル名で起動します。 削除したい行数に移動します。行数へ移動する場合は、行数+大文字のGで移動できます。またファイルをスクロールさせるには、CTRL+FやCTRL+Bで1ページスクロールできます。削除したい行数までカーソルが移動できたら、ddとタイプします。それでカーソル行を削除できます。最後に:wqとタイプするとファイルをセーブできます。

dupeng
質問者

補足

皆さん、いろいろ回答してくれて、ありがとうございます。私の説明不足で、ちょっと言いたいこと伝わっていないようです。 実は、監査ログの取得をやっております。ログファイルから別のファイルにログを取得した後、もとの監査ログファイルから取得した分を削除しないといけないです。毎日スケジュラーが自動にShell Scriptでこういうことやるのです。 その制限は二つあります。まず、もとのログファイルを残さないといけないです。次に、別のファイルにログを取得した後も、ログが取られる場合がありますので、もともとのファイルから全部削除するわけにはいかないです。 ということで、やりたいのは、こういうことです; # cat text 1:line1 2:line2 3:line3 4:line4 # xxxx.sh <----- Is it possible? # cat text 1: line1 2: new line add by other processes こういうことできるshell scriptを作りたいです。いい方法あったら、ぜひ教えていただきたいです。

関連するQ&A

  • unix コマンドの返り値を一行にする方法について

    unix コマンドの返り値を一行にする方法について lsコマンドをリダイレクトでファイルにすると file1 file2 file3 と3行になります。 これを file1 file2 file3 の一行にしたいのですが、方法はありますか。 尚、ファイルの数は3個とは限りません。 わかる方がいらっしゃれば、教えてください。 よろしくお願いいたします。

  • unix sedコマンドについて

    file --------------------------------------- abcdefghijklmnopqrstu abcdefghijklmnopqrstu person=aaa wake walk work abcdefghijklmnopqrstu abcdefghijklmnopqrstu --------------------------------- といったファイルにて このファイルからperson~空白行を「sedコマンド」で削除したいのですがどのようにしたらよいでしょうか。 sedコマンドを使用すると、どうやら、数行あるテキストを一行にまとめ、空白行を見つけたらその行を削除するといった動きになるようです。(一行でそれを行うのでしょうか。。) どなたか、わかる方いたら教えていただけないでしょうか。 よろしくお願いします。

  • BATファイルでshellのreadのようなコマンドは無いのでしょうか?

    BATファイルでUNIXのshellのreadコマンドのような機能を探しています。 ヘルプ等で探してみたのですが見つかりません・・・・ 存在するのでしょうか??

  • コマンドプロンプトでの作業ログ保存

    コマンドプロンプトで作業する時に、その作業ログを残すにはどうすればよいのでしょうか。リダイレクト">"でコマンドごとに保存するのではなく、作業時に表示されたもの全てをログとしてテキストファイルに残す方法を探しています。(UNIXのscriptコマンドのようなもの) 初歩的な質問かと思いますが、ご回答宜しくお願いします。

  • Unixのコマンドについて

    Windows上で、cygwinを動かしています。 50行から成るテキストファイルが50個あります。各ファイルの各行を取りだして、1つのファイルにまとめるにはどのようなコマンドを使えばできますか? 例でいうと下記のようになります。ファイルAとファイルBからファイルCを作成したいです。 [ファイルA]   [ファイルB] 1行目      1行目 2行目      2行目 3行目      3行目 ・・・        ・・・ [ファイルC] ファイルAの1行目 ファイルBの1行目 ・・・ ご教授いただければ幸いです。よろしくお願いします。

  • UNIXのソートコマンドについて

    はじめまして、UNIXのsortコマンドについて質問です。 CSVファイルをソートする際、1行目がタイトル行で2行目以降をソートしたいのですがよい方法をご存知ですか? OSはSunOSでバージョンは3.8くらいだったと思います。 よろしくお願いします。

  • UNIXのコマンドを教えて下さい。

    AAAAという名前のテキストファイルにBBBBという文字列が含まれる行の最後に CCCCの文字列を追加したい場合、どのようなコマンドを使ったらよいでしょうか?

  • linuxコマンドでファイル操作

    linuxなどのターミナル上で、ファイル内部をコマンドで編集したいのですが できますでしょうか。 例をあげますと、 hoge.shというスクリプトファイルに、 ... ... echo "/home/user001/hoge/" ... のような内容のものがあった時に、 echo "/home/user001/hoge/" の部分だけを、 echo "/home/user002/hoge/" に変更したいのです。エディタで編集すれば良いのでしょうが、 量が多く、スクリプト可したいと考えています。 もし、コマンドラインからこのような簡単な変更ができるものがあれば 教えて頂けないでしょうか。

  • linuxコマンドでファイル操作

    linuxなどのターミナル上で、ファイル内部をコマンドで編集したいのですが できますでしょうか。 例をあげますと、 hoge.shというスクリプトファイルに、 ... ... echo \"/home/user001/hoge/\" ... のような内容のものがあった時に、 echo \"/home/user001/hoge/\" の部分だけを、 echo \"/home/user002/hoge/\" に変更したいのです。エディタで編集すれば良いのでしょうが、 量が多く、スクリプト可したいと考えています。 もし、コマンドラインからこのような簡単な変更ができるものがあれば 教えて頂けないでしょうか。

  • Windows Dosコマンドで

    WinXP HE あるいは PEでのお話です。 Dosコマンドで(バッチ処理をさせたいのですが)、 あるテキストファイルの1行目の先頭文字2文字を 切り取って標準出力する方法はあるのでしょうか? いろいろ調べてみたのですが、 UNIXほど強力なテキストエディット機能が無いようで困っています。