📄 rlvers.sh
字号:
#! /bin/sh## rlvers.sh -- run a program that prints out the readline version number# using locally-installed readline libraries## Copyright (C) 1996-2002 Free Software Foundation, Inc.## This program 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 3 of the License, or# (at your option) any later version.## This program 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 this program. If not, see <http://www.gnu.org/licenses/>.#PROGNAME=`basename $0`: ${TMPDIR:=/tmp}TDIR=$TMPDIR/rlvers# defaultsCC=ccRL_LIBDIR=/usr/local/libRL_INCDIR=/usr/local/includeTERMCAP_LIB="-ltermcap"# cannot rely on the presence of getoptswhile [ $# -gt 0 ]; do case "$1" in -C) shift ; CC="$1"; shift ;; -I) shift ; RL_INCDIR="$1" ; shift ;; -L) shift ; RL_LIBDIR="$1" ; shift ;; -T) shift ; TERMCAP_LIB="$1" ; shift ;; -v) shift ; verbose=y ;; --) shift ; break ;; *) echo "${PROGNAME}: usage: $PROGNAME [-C compiler] [-L libdir] [-v]" >&2 ; exit 2;; esacdone# if someone happened to install examples/rlversion, use it (it's not# installed by default)if test -f ${RL_LIBDIR}/rlversion ; then if [ -n "$verbose" ]; then echo "${PROGNAME}: using installed rlversion from ${RL_LIBDIR}/rlversion" fi v=`${RL_LIBDIR}/rlversion 2>/dev/null` case "$v" in unknown | "") echo 0 ;; *) echo "$v" ;; esac exit 0fiif [ -n "$verbose" ]; then echo "${PROGNAME}: using ${RL_LIBDIR} to find libreadline" echo "${PROGNAME}: attempting program compilation"fi# make $TDIR mode 0700mkdir $TDIR || { echo "${PROGNAME}: ${TDIR}: file exists" >&2 echo 0 exit 1}chmod 700 $TDIRtrap 'rm -f $TDIR/rlvers $TDIR/rlvers.? ; rmdir $TDIR' 0 1 2 3 6 15cat > $TDIR/rlvers.c << EOF#include <stdio.h>extern char *rl_library_version;main(){ printf("%s\n", rl_library_version ? rl_library_version : "0"); exit(0);}EOFopwd=`pwd`cd $TDIR || { echo "${PROGNAME}: cannot cd to $TDIR" >&2 echo 0 exit 1} if eval ${CC} -L${RL_LIBDIR} -I${RL_INCDIR} -o $TDIR/rlvers $TDIR/rlvers.c -lreadline ${TERMCAP_LIB};then v=`$TDIR/rlvers`else if [ -n "$verbose" ] ; then echo "${PROGNAME}: compilation failed: status $?" echo "${PROGNAME}: using version 0" fi v=0ficase "$v" inunknown | "") echo 0 ;;*) echo "$v" ;;esaccd $opwdexit 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -