戻る

前へ | 次へ

more sh スクリプト のコピー

Pocket Linux Guide では作成するのですが とてもそんな風に出来ないので コピー させて頂きます。

http://tldp.org/LDP/Pocket-Linux-Guide/html/x1654.html
# cd staging/bin
# pwd
/home/qpo/proj/staging/bin
# vi more.sh

more.sh

# cat more.sh 
#!/bin/sh
#
# more.sh - emulates the basic functions of the "more" binary without
#           requiring ncurses or termcap libraries.
#
# Assume input is coming from STDIN unless a valid file is given as
# a command-line argument. 
if [ -f $1 ]; then
  INPUT="$1"
else
  INPUT="/dev/stdin"
fi
#
# Set IFS to newline only. See BASH(1) manpage for details on IFS.
IFS=$'\n'
#
# If terminal dimensions are not already set as shell variables, take
# a guess of 80x25.
if [ "$COLUMNS" = "" ]; then
  let COLUMNS=80;
fi
if [ "$LINES" = "" ]; then
  let LINES=25;
fi
#
# Initialize line counter variable
let LINE_COUNTER=$LINES
#
# Read the input file one line at a time and display on STDOUT until
# the page fills up. Display "Press <Enter>" message on STDERR and wait
# for keypress from STDERR.  Continue until the end of the input file.
# Any input line greater than $COLUMNS characters in length is wrapped
# and counts as multiple lines.
#
while read -n $COLUMNS LINE_BUFFER; do
  echo "$LINE_BUFFER"
  let LINE_COUNTER=$LINE_COUNTER-1
  if [ $LINE_COUNTER -le 1 ]; then
    echo "Press <ENTER> for next page or <CTRL>+C to quit.">/dev/stderr
    read</dev/stderr
    let LINE_COUNTER=$LINES
  fi
done<$INPUT
#
# end of more.sh

だそうです、 動くはずですね

# source more.sh ../etc/passwd        
root::0:0:Super User:/root:/bin/sh
bin:x:1:1:Legacy UID:/bin:/bin/false
# source more.sh /etc/group /*  大きなファイルでは どうか    */
root::0:root
bin::1:root,bin,daemon
...
nogroup::65534:
Press <ENTER> for next page or <CTRL>+C to quit.

/*          ENTER キーを 押すと  */
apache:x:80:
named:x:200:
smmsp:x:25:
pgsql:x:201:

”<CTRL>+C”の場合は 試されるが よろしかろう。

シンボリックリンク作成

more.sh の シンボリックリンクを作成します。 実行属性は後でまとめて処 理をします。

# ln -s more.sh more
# ls -l | grep more
lrwxrwxrwx    1 root     root            7 Sep  6 21:29 more -> more.sh
-rw-r--r--    1 root     root         1228 Sep  6 21:10 more.sh

コピーしただけです。

にゃんたろう 拝!

2010年 9月 6日 (月) 22:03:32 JST 作成


前へ | 次へ

戻る

Copyright © 2006.-2010. nyantarou All Rights Reserved.