Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Per Cederqvist
lyskom-server-ceder-1616-generations-topgit
Commits
3f8f2ac5
Commit
3f8f2ac5
authored
Aug 17, 2002
by
Per Cederqvist
Browse files
Initial commit.
parent
d38fcbcd
Changes
2
Hide whitespace changes
Inline
Side-by-side
doc/filterlines.py
0 → 100644
View file @
3f8f2ac5
#!/usr/bin/env python
# Remove lines matching any line of several input files.
# Copyright (C) 2001-2002 Lysator Academic Computer Association.
#
# This file is part of the LysKOM server.
#
# LysKOM is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 1, or (at your option)
# any later version.
#
# LysKOM is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
# along with LysKOM; see the file COPYING. If not, write to
# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN,
# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
# MA 02139, USA.
#
# Please mail bug reports to bug-lyskom@lysator.liu.se.
# Read and remember each line from all the file names given as arguments.
# Then, read stdin, remove any line present in the input files, and
# print the rest to stdout.
import
sys
def
add_contents
(
filename
,
m
):
f
=
open
(
filename
,
"r"
)
while
1
:
line
=
f
.
readline
()
if
line
==
""
:
break
if
line
[
-
1
]
==
"
\n
"
:
line
=
line
[:
-
1
]
m
[
intern
(
line
)]
=
None
f
.
close
()
def
filter_file
(
f
,
m
):
while
1
:
line
=
f
.
readline
()
if
line
==
""
:
break
if
line
[
-
1
]
==
"
\n
"
:
line
=
line
[:
-
1
]
if
not
m
.
has_key
(
line
):
print
line
def
main
(
files
):
m
=
{}
for
fn
in
files
:
add_contents
(
fn
,
m
)
filter_file
(
sys
.
stdin
,
m
)
if
__name__
==
'__main__'
:
main
(
sys
.
argv
)
doc/tac.py
0 → 100644
View file @
3f8f2ac5
#!/usr/bin/env python
# Reverse the contents of stdin.
# Copyright (C) 2001-2002 Lysator Academic Computer Association.
#
# This file is part of the LysKOM server.
#
# LysKOM is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 1, or (at your option)
# any later version.
#
# LysKOM is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
# along with LysKOM; see the file COPYING. If not, write to
# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN,
# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
# MA 02139, USA.
#
# Please mail bug reports to bug-lyskom@lysator.liu.se.
import
sys
def
main
():
# Known limitation: we fail if the last line doesn't end with a newline.
lines
=
sys
.
stdin
.
readlines
()
lines
.
reverse
()
for
line
in
lines
:
sys
.
stdout
.
write
(
line
)
if
__name__
==
'__main__'
:
main
()
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment