![Linux認証ファイルの特定の単語にサーバーの追加エイリアスを追加する方法[閉じる]](https://linux33.com/image/122873/Linux%E8%AA%8D%E8%A8%BC%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E7%89%B9%E5%AE%9A%E3%81%AE%E5%8D%98%E8%AA%9E%E3%81%AB%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%81%AE%E8%BF%BD%E5%8A%A0%E3%82%A8%E3%82%A4%E3%83%AA%E3%82%A2%E3%82%B9%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%5B%E9%96%89%E3%81%98%E3%82%8B%5D.png)
サーバーの認証ファイルにはいくつかのフィールドが定義されていますが、1行ずつ異なる場合があります。私が望むのは、その行の特定のフィールドにエイリアスを追加することです。
ip( ) アドレスの後に156.154.18.6
次の追加エイリアスを追加する必要があります。
|ser6.nam.net|156.154.18.7|ser7.nam.net|156.154.18.8
以前の承認ファイル:
Keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser1.nam.net|156.154.12.1"
Keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser2.nam.net|156.154.15.2|ser5.nam.net|156.154.18.6"
keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser3.nam.net|156.154.17.4|ser5.nam.net|156.154.18.6"
keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser4.nam.net|156.154.15.6"
ファイルを承認した後:
Keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser1.nam.net|156.154.12.1"
Keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser2.nam.net|156.154.15.2|ser5.nam.net|156.154.18.6|ser6.nam.net|156.154.18.7|ser7.nam.net|156.154.18.8"
keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser3.nam.net|156.154.17.4|ser5.nam.net|156.154.18.6|ser6.nam.net|156.154.18.7|ser7.nam.net|156.154.18.8"
keys [email protected]
Options command="eval $SSH_ORIGINAL_COMMAND",allow-from="ser4.nam.net|156.154.15.6"
答え1
簡単にsed
注文する:
sed 's/156\.154\.18\.6/&|ser6.nam.net|156.154.18.7|ser7.nam.net|156.154.18.8/' file
- ある行でのみ置換を実行するには、ser2.nam.net
次のコマンドを使用します。
sed '/ser2\.nam\.net/ s/156\.154\.18\.6/&|ser6.nam.net|156.154.18.7|ser7.nam.net|156.154.18.8/' file