簡體   English   中英

Bash腳本:如何替換用戶輸入中的文本

[英]Bash script: how to replace text from user input

我需要制作一個交互式bash腳本,用戶將在其中輸入一個單詞,例如“ xyz”,它將替換文本文件中的一個單詞。

例如,我有一個名為example.sh的腳本。 當我運行它時,它應該問:

What is your name?: 
and the user will input 'xyz'.

該腳本應該接受該輸入,並將文本文件userlist.txt中的“用戶名”替換為“ xyz”

更清楚地說,我需要用戶輸入才能運行

sed -i -es/username/userinput/g userlist.txt

您可以使用read內置函數來讀取用戶輸入,然后可以使用sed(1)進行文本替換:

if read -p "What is your name? " name; then
  sed -i~ -e "s/username/${name}/g" userlist.txt
else
  # Error
fi
#!/bin/bash
echo "What is your name?"
read name
sed -i -e s/username/"$name"/g userlist.txt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM