Unlocking spreadsheet files quickly
Don't put your method inside Kernel.
Rename ls_grep to something more descriptive, e.g. unlock_spreadsheet.
The two shell commands (cd and ls|grep) aren't needed. The code doesn't depend on the current directory, and you're not using the commands' output.
Don't use an instance variable (@input_folio) as a temporary variable inside a method. Make it a local variable.
The regex matches anything that begins with sevent digits. Use /\A\d{7}\z/ instead in order to match against the whole string.
Don't check if the file exists before deleting it, someone might delete it after you check and before you try to delete it. Instead, try to delete it and catch the possible exception.
Don't use recursion to repeat the method. Use a loop.



                puts &lt;&lt;-EDE.gsub(/^\s*&gt;/, ' ') 
                &gt;
                &gt;Lockfile not found for Folio # #{@input_folio}"
                &gt;
                &gt;If the file name doesn't match the folio number, get the file name
                &gt;and use that instead of the Foilio number...
                &gt;
                EDE



Remove the call to gsub:

                puts &lt;&lt;-EDE

 Lockfile not found for Folio # #{@input_folio}"

 If the file name doesn't match the folio number, get the file name
 and use that instead of the Foilio number...

                EDE


You may want to put those strings in global constants to avoid this decrease in indentation in the code.