すべてのファイルを一覧表示し、その中から特定のファイルのみを選択しようとしています。
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_.*"