unix-shell-4

tr命令:字符替换和删除命令

-s:删除所有重复出现字符序列,只保留一个

例:tr -s filename--------------将filename所有重复字符序列删除

-d:删除指定字符

  例:tr -d "\n\t" filename------将filename里所有的换行符,制表符删除

-c:用给定字符集替换此字符集的补集

例:tr -c "[a-z]" "\n" filename-将filename里所有非小写字母用换行替换

例:vi tr.txt

And the cowwwws went homeeeeeeeee

or did theyyyyyyy

命令:tr -s "[a-z]"<tr.txt      -------------删除tr.txt里所有小写字母重复字符

结果为:And the cows went home

or did they

要删除空行只需删除重复换行符即可:

例:tr -s "[\n]" filename

将文件里内容大小写转换:

tr "[a-z]" "[A-Z]" filename  -------------将filename所有小写字母变成大写字母

tr "[A-Z]" "[a-z]" filename  -------------将filename所有大写字母变成小写字母

也可使用字符集[:lower:]------[a-z]       [:upper:]------[A-Z]

环境变量:

设置变量:value="fabregas"-------value值为fabregas

echo $value结果为:fabregas

EXINIT:保存vi编辑器初始化选项:

例:EXINIT=‘set nu’;export EXINIT

vi打开时会自动显示行数,export是设置的变量可以被其他使用

HOME:设置家目录,即单纯cd跳往的地方

IFS:shell 缺省分隔符

PS1:基本命令提示符

PS2:附属提示符

特殊shell变量:

$#:参数个数

$*:以一个单字符串显示所有参数

$$:脚本运行当前ID号

$!:后台运行最后一个进程ID号

$@:与$#相同,但是加了引号

$-:显示shell使用的当前选项

$?:命令退出状态,0表示正确,其他表示错误

引号:

单引号和双引号差不多,

`----反引号:shell将反引号中内容作为一个系统命令

例:echo `clear`--------------执行清屏命令

linux下echo命令用-e 选项使转义字符生效

例:echo "\n"---------------打印\n字符串

echo -e "\n"------------------打印换行

test命令:测试命令

test -x filename-----------测试文件是否可执行

test  -d filename----------测试文件是否为目录

test string1 = string2----测试string1是否等于string2,注意等号两边一定要加空格

test -n string---------------测试字符串长度是否非零

test有很多选项,具体参加test命令,test结果可以用echo $?查看,为0表示正确

测试逻辑操作符:

-a:与

-o:或

!:非

[ -w filename1 -a  -x filename2 ]---------测试filename是否可写且filename2是否可执行,注意[后面和]前面一定要有空格,-o与!选项类似

expr命令:用于整数值计算,也可用于字符串

例:expr 10 + 10

结果:20.

一定要注意+两端要有空格

expr 23 \* 5

结果:115

*要加转义符,不用忘了空格

expr 30 / 5 / 2

结果:3

还是不要忘了运算符两端的空格

expr通过:选项计算字符串字符个数,.*匹配任何字符

例:expr ”hello“ :‘.*'

结果:5


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值