私は単純なbashスクリプトを書いています(実際にこれを行う方法を学んでいます)、この関数はechoとsedを使用して正確に同じ出力を返したいと思います。 sedで解決策を見つけましたが、コンソールでは機能しますが、スクリプト内では機能しません。 (スクリプトはsudoとして呼び出されます。多分それは重要かもしれません)
これは私の機能です。
function strip
{
echo "$1" | grep -oP '[a-zA-Z0-9\+\-\=\ ]+' | head -n 1;
}
これがうまくいく方法です。
入力: "-壁"
出力: "-壁"
入力: "-O3%## -Wall"
出力: "-O3"
入力: "%#$#$"
出力: ""
誰もがsedを使用することが何であるかを示すことができますか?
答え1
echo ___abc___ | sed 's/^.*\(abc\).*$/\1/'
abc