我想編寫一個bash腳本,按不同文件中的規則對輸入進行排序。第一條規則是在file1中寫入所有字符或字符串。第二條規則是將所有數字寫入file2。第三條規則是在file3中寫入所有字母數字字符串。所有特色字符必須被忽略。因爲我不熟悉bash,所以我不知道如何實現這一點。Bash Sorting STDIN
有人可以幫助我嗎?
感謝, Haniball
感謝您的答案,
我寫這個劇本,
#!/bin/bash
inp=0 echo "Which filename for strings?"
read strg
touch $strg
echo "Which filename for nums?"
read nums
touch $nums
echo "Which filename for alphanumerics?"
read alphanums
touch $alphanums
while [ "$inp" != "quit" ]
do
echo "Input: "
read inp
echo $inp | grep -o '\<[a-zA-Z]+>' > $strg
echo $inp | grep -o '\<[0-9]>' > $nums
echo $inp | grep -o -E '\<[0-9]{2,}>' > $nums
done
後,我跑了它,它只有在stringfile寫入字符串。
問候,Haniball
這實際上是否需要寫在'bash(1)'中?存在用於處理文本的更爲方便的工具。另外,我很不清楚你想完成什麼 - 你需要在任何人都能理解你想要做的事情之前給出一個輸入文件和輸出文件。最後,堆棧溢出是_questions_和_answers_ - 這不是一個_please做我的工作爲我的網站。你最好向我們展示你解決問題的嘗試,並尋求具體的幫助。 – sarnold
向我們展示您的輸入,沒有它,我們可以做的事情就不多了...... –
輸入是:'42'然後'退出'。之後它只將'quit'放入stringfile中。數字文件是空的。 – Haniball