zoukankan      html  css  js  c++  java
  • typeset shell 用法

    typeset用于设置变量属性,如大小写,宽度,左右对齐等都可以用typeset来控制, 当用typeset改变一个变量的属性时,这种改变是永久的,下面以ksh为例,演示typeset的几种典型用法



    1,无选项的执行typeset,则显示所有变量
    /home/lee#typeset
    typeset COLORS
    typeset -x COLORTERM
    typeset -x DISPLAY
    typeset -x GDMSESSION
    typeset -x GNOME_DESKTOP_SESSION_ID
    typeset -x GTK_RC_FILES
    typeset -x G_BROKEN_FILENAMES
    typeset -x HISTSIZE
    typeset -x HOME
    typeset -x HOSTNAME
    typeset IFS
    typeset -x INPUTRC
    typeset -r KSH_VERSION
    typeset -x LANG
    typeset -x LANGUAGE
    typeset -x LESSOPEN
    typeset -x LOGNAME
    typeset -x LS_COLORS
    typeset -x MAIL
    typeset -i MAILCHECK
    typeset -i OPTIND
    typeset -x PATH
    typeset -i PPID
    typeset -x PS1
    typeset PS2
    typeset PS3
    typeset PS4
    typeset -x PWD
    typeset -i RANDOM
    typeset -i SECONDS
    typeset -x SESSION_MANAGER
    typeset -x SHELL
    typeset -x SHLVL
    typeset -x SSH_AGENT_PID
    typeset -x SSH_ASKPASS
    typeset -x SSH_AUTH_SOCK
    typeset SUPPORTED
    typeset -x TERM
    typeset -i TMOUT
    typeset -x USER
    typeset -x USERNAME
    typeset -x WINDOWID
    typeset -x XAUTHORITY
    typeset -x XMODIFIERS
    typeset _

    2:typeset的-u选项可以将一个变量的字符变成大写
    /home/lee#typeset -u var=abc
    /home/lee#echo $var
    ABC

    3:typeset的-l选项将一个变量的字符变成小写
    /home/lee#typeset -l var=ABC
    /home/lee#echo $var
    abc

    4:typeset的-L选项把变量变成一个左对齐的4个字符串,有些像字符串截取 
    /home/lee#typeset -L4 var=abcdefg
    /home/lee#echo $var
    abcd

    5:typeset的-R选项把变量变成一个右对齐的4个字符串
    /home/lee#typeset -R4 var=abcdefg
    /home/lee#echo $var
    defg

    6:typeset的-Z选项把串变成一个空填充,占15个字符位的串,冒号用来保护空白符
    /home/lee#typeset -Z15 var="abc ddd"
    /home/lee#echo "$var"
    ^^^^^^^^abc ddd #^为空白
    /home/lee#typeset -LZ15 var="abc 123"
    /home/lee#echo "$var$var"
    abc 123 abc 123

    7:变量n是一个被设置成一个整数的变量,typeset命令将整数n前面补齐0,共15个字符位
    /home/lee#typeset -i n=24
    /home/lee#typeset -Z15 n
    /home/lee#echo $n
    000000000000024

    8:变量answer被给定一个值--Yes并变成一个小写,左对齐,一个字符的串
    /home/lee#typeset -lL1 answer=Yes
    /home/lee#echo $answer
    y

    typeset其他用法:
    typeset -i num #强制num为一个整数,如:
    /home/lee#typeset -i num=10
    /home/lee#echo $num
    10
    /home/lee#typeset -i16 num=10
    /home/lee#echo $num
    16#a
    /home/lee#typeset -i2 num=10
    /home/lee#echo $num
    2#1010
    /home/lee#typeset -i8 num=10
    /home/lee#echo $num
    8#12

    typeset -x #显示被导出的变量
    typeset a b c #如果在一个函数里定义,则把a b c创建为局部变量
    typeset -r x=var#设置一个只读变量
  • 相关阅读:
    Java内存模型详解
    《深入理解java虚拟机》读书笔记十一——第十二章
    《深入理解java虚拟机》读书笔记十——第十一章
    《深入理解java虚拟机》读书笔记九——第十章
    《深入理解java虚拟机》读书笔记八——第九章
    《深入理解java虚拟机》读书笔记七——第八章
    《深入理解java虚拟机》读书笔记六——第七章
    《深入理解java虚拟机》读书笔记四——第五章
    a标签添加onclick事件
    Vi||Vim显示行号,自动缩进,调整tab键宽度技巧
  • 原文地址:https://www.cnblogs.com/xiaopengren/p/3881113.html
Copyright © 2011-2022 走看看