3つのファイルを含む「sample」というフォルダがあります。サンプルフォルダからこれらのファイルを読み取り、カールを使用してHTTPサイトに公開するシェルスクリプトを作成したいと思います。
フォルダ内のファイルを一覧表示するために、以下を作成しました。
for dir in sample/*; do
echo $dir;
done
しかし、それは私に次のような結果を与えます:
sample/log
sample/clk
sample/demo
その中に親フォルダを追加します。私が望む出力は次のとおりです(親フォルダ名なし)。
log
clk
demo
どうすればいいですか?
ベストアンサー1
basename
ファイルの先行パスを削除するには、次の手順を実行します。
for file in sample/*; do
echo "$(basename "$file")"
done
しかし、なぜできないのですか?
( cd sample; ls )