Bundled Homer commands
When regular expression are used in these commands, the extended POSIX syntax is used. The consequence is that if you want ot match a file name based on its extension (say "cpp"), the regular expression to use is:
.*\.cpp
Note the escaped dot sign.
AbortCommand
![]()
This command aborts the current script by returning B_INTERRUPTED. The iterator interprets this return status as an abort.
AttributeCommand

This command makes it possible to add/replace or remove attributes in the entry. The mode can be add (no replace), replace (create or replace if exists), or remove.
Some combinations are:
| action | name | case sensitive | type | operator | value | meaning |
| replace | azerty | N | int32 | - | 12345 | replace the value for attributes whose name is "azerty" (including "aZErtY", "AZeRTY", ...) and type int32 with 12345 |
| remove | * | - | int32 | - | * | removes any attribute with type int32 |
| remove | * | - | int32 | < | 57 | removes any int32 attribute whose value is less than 57 |
| remove | [a-z]+ | N | int32 | - | - | removes any attribute whose name consists of alphabetical characters, regardless of the case |
| remove | * | - | * | - | - | removes any attribute |
ChmodCommand

This command updates the entry's access rights. the user/group and others groups bit can be cleared or set independently. The 3 values are:
Click on the "r", "w" and "x" buttons to iterate through this list. For instance, if you want to make the 644 mode, you can use:
++0 +00 +00
If you just want to set the 644 mode without affecting the other bits, use:
++. +.. +..
Note that this is a useless command for now, given that access rights are not enforced by the BeOS.
CrlfCommand
![]()
This command makes it possible to convert files from CRLF to CR or from CR to CRLF. Just select the appropriate entry in the menu
GrepCommand
![]()
This command performs a grep-like search in the entry (which has to be a file, otherwise an error is returned) Use the extended POSIX syntax to specify the expression to search for. You can't use the grep on the output of another grep command like you would with pipes in a shell script or command.
MessageCommand

This command issues a message whatever output is selected. The output can be the standard output, Homer (the message will appear in Homer's messages list) or an Alert box. The type of the message (error, warning or info) can be specified. Moreover, you can choose to abort the script by checking the "abort" box. This can also be achieved by using the AbortCommand command, it's just more convenient.
PromptCommand
![]()
This command allows to prompt the script. An alert box will bedisplayed with a message and 3 choices: abort, skip or process, which respectively aborts the script, skip to the next entry or process the entry.
ReplaceCommand

This command is much like a grep command excepted that you replace the matched expression (still expressed using the extended POSIX syntax) by another expression. The special "$$" string stands for the expression which was matched. For instance, if you want to replace every word by the same word repeated twice, you would use:
search for: [a-zA-Z]+
replace by: $$$$
To specify a no-op, you would just use "$$" as the replace string.
TouchCommand
![]()
This command performs the same action as the "touch" shell command: it sets the modification's time and date of the entry to "now".
TrashCommand
![]()
This command moves the entry to the trash (unless it is already in the trash). When moved, an attribute is added to the entry so that its former location is known. This command is meant to be used with the UntrashCommand, which allows to restore the files to their original location.
UntrashCommand
![]()
This command allows one to restore files which were moved to trash with the Homer TrashCommand. You can specify whether you want therestored files to replace existing files or not, and if the missing directories have to be created.
VoidCommand
![]()
This command does nothing.
ZipCommand

This command creates zip archives. You specify the name of the archive (it is created if needed), the compress method and the recursive processing.
This page was last updated on 12/12/99.