You can enclose the file name that might have spaces with double quotes. 
Changing the sed line to this should work.

sed -i '' "s/#BASENAME#/$filename_woext/g" "$fullfile"

[fletcher]


> On Jul 17, 2025, at 7:20 AM, Bill Kochman <[email protected]> wrote:
> 
> Hello Fletcher,
> 
> I think I have figured out what the problem is. Adding set-x didn’t really 
> help. But, when I tried it this time. it actually worked on 14 files and 
> failed on 717 others. That was when I realized that all 14 files which were 
> successful were one-word file names. All the rest are multi-word file names 
> with spaces between the words.
> 
> So, I really don’t want to add dashes to those 717 file names unless I really 
> have to. So do you know if there is a way to edit these scripts so that they 
> will accept spaces between words. I think that will resolve this issue.
> 
> Thanks,
> 
> Bill Kochman
> 
>> On Jul 17, 2025, at 11:52 PM, [email protected] wrote:
>> 
>> The scripts do seem to work for me with a few test files. You could add "set 
>> -x" to the top of the script and it will output all the commands being 
>> executed. That might give you an idea what is going wrong.
>> 
>> processtxt.sh
>> ----
>> #!/usr/bin/env bash
>> 
>> set -x
>> 
>> directory="$1/*.txt"
>> for f in $directory
>> do
>>  echo "Processing $f..."
>>  fullfile="$f"
>>  filename=$(basename "$fullfile")
>>  filename_woext="${filename%.*}"
>>  sed -i '' "s/#BASENAME#/$filename_woext/g" $fullfile
>> done
>> ----
>> 
>> % ./processtxt.sh files
>> 
>> + directory='files/*.txt'
>> + for f in '$directory'
>> + echo 'Processing files/testing1.txt...'
>> Processing files/testing1.txt...
>> + fullfile=files/testing1.txt
>> ++ basename files/testing1.txt
>> + filename=testing1.txt
>> + filename_woext=testing1
>> + sed -i '' s/#BASENAME#/testing1/g files/testing1.txt
>> 
>> [fletcher]
>> 
>> 
>>> On Jul 17, 2025, at 5:46 AM, Bill Kochman <[email protected]> wrote:
>>> 
>>> Greetings List,
>>> 
>>> I have an old shell script which I needed to use today and ran into a 
>>> problem which I haven’t been able to figure out. I still have the BBEdit 
>>> help file I wrote for myself years ago, but the instructions don’t seem to 
>>> be working. I have two versions of the script, one for .txt files, and one 
>>> for .html files.
>>> 
>>> I have been trying to use the script to add the file name of each file to 
>>> the top and bottom of over 700 BBEdit files. However, after dropping the 
>>> shell script into the Terminal window, and then dragging the selected 
>>> folder full of files to the Terminal, and then removing the ending space 
>>> and hitting my return key, I get an error for every single file in the 
>>> folder which says “no such file or folder found".
>>> 
>>> I have placed the script both on the desktop, as well as in my Home folder. 
>>> Likewise, I have done the same for the folder containing the 700+ BBEdit 
>>> files. But no matter what I do, or where I place the script and folder, I 
>>> still keep getting the error.
>>> I am not sure what I am doing wrong.
>>> 
>>> I am currently running Sequoia 15.5 on a 2023 Apple Studio if that is of 
>>> any help.
>>> 
>>> Did Apple do something which makes these two scripts no longer work 
>>> properly, or am I just forgetting how to do this properly?
>>> 
>>> Below is the contents of both scripts. They are identical except for the 
>>> fact that one has “html" in it, while the other has “txt" in it.
>>> 
>>> #!/usr/bin/env bash
>>> 
>>> directory="$1/*.txt"
>>> for f in $directory
>>> do
>>>  echo "Processing $f..."
>>>  fullfile="$f"
>>>  filename=$(basename "$fullfile")
>>>  filename_woext="${filename%.*}"
>>>   sed -i '' "s/#BASENAME#/$filename_woext/g" $fullfile
>>> done
>>> 
>>> 
>>> #!/usr/bin/env bash
>>> 
>>> directory="$1/*.html"
>>> for f in $directory
>>> do
>>>  echo "Processing $f..."
>>>  fullfile="$f"
>>>  filename=$(basename "$fullfile")
>>>  filename_woext="${filename%.*}"
>>>   sed -i '' "s/#BASENAME#/$filename_woext/g" $fullfile
>>> done
>>> 
>>> Thanks in advance to anyone who can help.
>>> 
>>> Kind Regards,
>>> 
>>> Bill Kochman
>>> 
>>> -- 
>>> This is the BBEdit Talk public discussion group. If you have a feature 
>>> request or believe that the application isn't working correctly, please 
>>> email "[email protected]" rather than posting here. Follow @bbedit on 
>>> Mastodon: <https://mastodon.social/@bbedit>
>>> --- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "BBEdit Talk" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to [email protected].
>>> To view this discussion visit 
>>> https://groups.google.com/d/msgid/bbedit/CD71B3FF-B1C9-4BEB-9CE8-82053C11265A%40gmail.com.
>> 
>> -- 
>> This is the BBEdit Talk public discussion group. If you have a feature 
>> request or believe that the application isn't working correctly, please 
>> email "[email protected]" rather than posting here. Follow @bbedit on 
>> Mastodon: <https://mastodon.social/@bbedit>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "BBEdit Talk" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion visit 
>> https://groups.google.com/d/msgid/bbedit/6E08CEFD-AC53-4AC3-8DB2-917C7B0DBC68%40cumuli.com.
> 
> -- 
> This is the BBEdit Talk public discussion group. If you have a feature 
> request or believe that the application isn't working correctly, please email 
> "[email protected]" rather than posting here. Follow @bbedit on Mastodon: 
> <https://mastodon.social/@bbedit>
> --- 
> You received this message because you are subscribed to the Google Groups 
> "BBEdit Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion visit 
> https://groups.google.com/d/msgid/bbedit/B9BC2C54-C72B-4068-A94E-A4E9D4EE7393%40gmail.com.

-- 
This is the BBEdit Talk public discussion group. If you have a feature request 
or believe that the application isn't working correctly, please email 
"[email protected]" rather than posting here. Follow @bbedit on Mastodon: 
<https://mastodon.social/@bbedit>
--- 
You received this message because you are subscribed to the Google Groups 
"BBEdit Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/bbedit/E695F2D8-61D4-4820-8CA6-457773722DF6%40cumuli.com.

Reply via email to