最初の文字でgrepできません。

最初の文字でgrepできません。

すべてのファイルを一覧表示し、その中から特定のファイルのみを選択しようとしています。 ls -1リストを返す

abc 
abcd
rm_0818-051752-753-06

以降は、この基準選択で 3 行目だけを返そうとするので、次のようにします。

ls -1 | grep -E "^rm_.*"

しかし、私は何も得られませんでした。

このようにして、3行目の最初の文字を識別しようとしています。

var=$(ls -1 | grep -E "rm_")
echo $var //returns rm_0818-051752-753-06
echo ${var:0:1} //returns some strange symbol 001B in square

この動作を説明し、最初の文字をどのようにキャッチできますか?ありがとう

ベストアンサー1

ls -1 | grep -E "^rm_.*"よさそうで動作するはずです。うまくいかない理由は、エイリアスが設定lsファイルのコマンドにバインドされているためです。
確認するには、以下を試してください。 /bin/ls -1 | grep -E "^rm_.*"

おすすめ記事