終わらない別の 's' コマンド

終わらない別の 's' コマンド

IPv4アドレススクリプトを簡単に置き換えようとします。

sed "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g"

これが私が持っているものです。タイトルのまま終了していない 's' コマンドを受け取りました。

編集:私はWindows上で動作しており、SSHを介してUnixシステムに接続しています。

もともと持っていたもの:

 sed 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g'

しかし、何かが期待どおりに読み取られず、エラーが発生する可能性があるため、一重引用符から二重引用符に変更しました。テストしてみましたが、結果はまだ「コマンドが終了していません」です。

どんなアイデアや提案でも良いです!

フルスクリプト

#!/bin/sed -f

#sed 's/[^@ ]*@[^@]*\.[^@ ]*\.[^@]*/[email protected]/g'

#sed 's/[^@]*\.[^@]*\.[^@]*/example.com/g'

sed "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g"

ファイル入力の例:

From: Mail System Internal Data <[email protected]>
Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA
X-IMAP: 1322061792 0000000000
Status: RO

Email message goes here.

From [email protected] Tue Nov 22 15:24:01 2011 -0500
Status: R
X-Status:
X-Keywords:
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]

ベストアンサー1

あなたのスクリプトはsedシェルスクリプトではなくスクリプトです。したがって、sed行の先頭に入れたり、コマンドの周りに引用符を入れる必要はありません。次に変更してください。

#!/bin/sed -f

s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g

おすすめ記事