LMOVE(1)
π LMOVE β the manual page, but make it bestie π
okay so you found lmove(1) in the General Commands Manual and honestly? she's a baddie. she moves articles into /news/group/number directories and she does it with zero drama. let's get into it π¦
β¨ NAME β¨
lmove β move articles into /news/group/number directories πΈ
π SYNOPSIS π
lmove -d directory [ -c filename ] [ -a filename ] [ -e | -E filename ]
[ -l phrase_file ] [ -D ] [ -A ] [ -h | -s ]
like yes that's a lot of brackets bestie, but they're all optional except -d. she's flexible π
π OPTIONS π
-a filenameβ this is where the active file lives. peep the file description further down for the tea. if you don't hand this over, she just uses the defaultactive. π-Aβ okay solmovereads the active file to figure out what number to start at when she's naming the article files in each group. the problem?? if some external program or person starts dropping articles into the directories themselves, or messing with the numbers in the active file, there's a real chance she accidentally overwrites articles that already exist π. to dodge that,lmovechecks whether an article already exists before moving a new one into the directory tree. if it's already there, she aborts right there with a warning message.
this option overrides the default action. if you pass it, lmove just keeps bumping the article number up and up until she finds one that isn't taken. slay. π₯
-c filenameβ the location of the configuration file. see the description of the file below. if you don't pass it, default islmove-config. π-d directoryβ this one is required, no skips allowed. it's the directory holding the articles thatlmoveis gonna sort into the directory structure. she should be on the same filesystem as the BASE directory (check ACTIVE FILE below), because some..IX's move command can not move files across file systems. no cap. π«Ά-Dβ tellslmoveto log a bunch of debugging messages intodebug.suck. this is mostly the developer's thing, used to trace various problems. π-e | -E filenameβ these two yeet all error messages (which normally show up on stderr) into an alternate file instead. the lowercase-esends them to the compiled-in default defined insuck_config.h. the uppercase-Eneeds the filename parameter, and all error messages go to that file. π-l phrase_fileβ tellslmoveto load an alternate phrase file instead of using the built-in messages. this is so you can have her print phrases in another language, or customize the messages without re-buildinglmove. see theFOREIGN LANGUAGE PHRASESsection insuck.1for more details. π-sβ tellssuckto create symbolic links for articles that are cross posted to multiple groups. the first group on the newsgroups line that's in the active file gets the actual text of the article, and any other groups on the newsgroups line that also exist in the active file get symbolic links to that actual text. this is so news readers can see cross posted articles in all the groups they were cross posted to.
NOTE: if an article is cross posted to a group that does not exist in the active file, then a link will not be created. π
-hβ identical to-s, except instead of symbolic links, hard links are created. go readman 2 linkandman 2 symlinkto explain the differences between hard and symbolic links. π
π¦ DESCRIPTION π¦
Lmove takes articles sitting in a single directory (like the ones you retrieved with suck), and puts them into a directory tree based on newsgroups. she uses an active file to figure out where to put the various articles, and to keep track of the highest numbered articles in those directories. Lmove will scan each article to find a matching group in the active file, then store the article in that group's directory, increasing the highest number for that group.
normally, once the first group of an article is matched in the active file, lmove moves on to the next article β unless you use the -h or -s option above. π
πΈ CONFIGURATION FILE πΈ
the configuration file should contain two lines:
BASE=/usr/spool/news
ACTIVE=/usr/spool/news/active
the BASE= tells lmove the base directory for all articles. this is where the articles are actually stored. π
the ACTIVE= tells lmove where to find the active file, described below. β¨
β ACTIVE FILE β
the active file consists of newsgroup names, the current highest article number, the current lowest article number, and the current status of the group. Lmove only uses the newsgroup name and highest article number. the other fields are just rewritten, and not modified in any way. they're there for use by other programs. π
example:
comp.os.linux.announce 1000 1 y
the lines are a listing of the valid groups that lmove will store articles in. the highest article number for a new group should be either 0 or 1. π
upon completion, lmove will move the current active file to active.old, and write out a new active file with the new highest article numbers. any articles not moved into the directory structure are left in the original article directory. no article left behind π«Ά
π EXIT VALUES π
0 on success, -1 on failure. that's it, that's the vibe check.
π₯ SEE ALSO π₯
suck(1), rpost(1), testhost(1).
and that's the whole page bestie!! this was LMOVE(1) from the General Commands Manual β go forth, sort your articles, and remember: check before you overwrite. mwah π
ππ¦β¨
π¦ where this page comes from
- debian bookworm: suck 4.3.4-1+b3 Β· Public Domain
- debian trixie: suck 4.3.5-5 Β· LicenseRef-public-domain
- ubuntu jammy: suck 4.3.4-1build1 Β· Public Domain
- ubuntu noble: suck 4.3.4-1build3 Β· Public Domain
- ubuntu questing: suck 4.3.5-5
- ubuntu resolute: suck 4.3.5-5build1 Β· LicenseRef-public-domain
- ubuntu stonking: suck 4.3.5-8build1 Β· LicenseRef-public-domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms