How do I go about echoing only the filename of a file if I iterate a directory with a for loop?
for filename in /home/user/*
do
echo $filename
done;
will pull the full path with the file name. I just want the file name.
If you want a native bash
solution
for file in /home/user/*; do
echo "${file##*/}"
done
The above uses Parameter Expansion which is native to the shell and does not require a call to an external binary such as basename
However, might I suggest just using find
find /home/user -type f -printf "%f\n"