GNU/Linux >> Linux の 問題 >  >> Linux

入力ファイルと同じ名前のファイルに保存する出力?

この質問にはすでに回答があります :別のファイルを作成せずにファイルを変更する[重複]

(6つの回答)
6年前に閉鎖されました。

入力ファイルが1つあり、コマンドを実行しましたが、入力ファイルと同じ名前で出力を保存したいのですが。

以下のコマンドを試しましたが、出力ファイルが空白になります:

cat file1 | grep "YISHA" > file1

承認された回答:

GNUシステムでは、sedを使用できます (GNU実装):

sed -i -n '/YISHA/p' file1

FreeBSDまたはOS/Xに相当するもの:

sed -i '' -n '/YISHA/p' file1

またはspongeを使用する moreutilsから:

grep "YISHA" file1 | sponge file1

Linux
  1. SHOW PROCESSLISTの出力をMySQLのファイルに保存するにはどうすればよいですか?

  2. コマンドによって処理されたソースファイルと同じファイルにリダイレクトしますか?

  3. ターミナルの入力と出力をテキストファイルに取得する方法は??

  1. Linux I / O(入力/出力)リダイレクトの仕組みの基本を学ぶ

  2. ファイルの 2 列目を出力する

  3. 同じバイトをグループ化して、ファイル内のバイト数をカウントする方法は?

  1. Linux/Unixでの入力/出力リダイレクト

  2. Iconvに入力ファイルを変換された出力に置き換える方法は?

  3. Stdoutに出力し、同時にGrepをファイルに出力しますか?