created: 2022-01-22T05:46:58.000Z

bashで、ディレクトリ配下のファイル名から拡張子を取り除いてforループする

こんな感じでできる。

for _ in $(ls -1 ./some-directory/*.txt | xargs basename -s .txt); do
    echo $_
done
  • ls -1 ./some-directory/*.txt
    • ディレクトリからファイル名だけを取り出す
  • xargs basename -s=.txt
    • ファイル名から .txt 拡張子を取り除く