
#!/bin/sh/sed -nf
printf "Enter a string:-\n"
read -r string
printf "Entered string is:-\n"
echo "$string"
echo -e "${string}" |sed -nr '$!N;/^(.*)\n\1$/!P;D'
我是 bash 腳本編寫的新手,我正在嘗試從使用者給出的輸入的字串中刪除重複項。問題是它沒有刪除任何東西。下面是輸出
roschlynn@Asus-X512FL:~/Desktop/Shell$ bash pipelinecmd.sh
Printing the string:-
1\n2\n2\n3\n3\n3\n4\n4\n4\n4\n5
1
2
3
4
5
Enter a string:-
king\quenn\king\jck
Entered string is:-
king\quenn\king\jck
king\quenn\king\jck
roschlynn@Asus-X512FL:~/Desktop/Shell$ ^C
roschlynn@Asus-X512FL:~/Desktop/Shell$
第一個字串工作正常,因為它已經定義了。但是當我嘗試獲取用戶的輸入並將其傳遞給 sed 函數時,問題就出現了。我猜它沒有傳遞變量,但我該如何解決這個問題?