linux常用命令积累Word下载.docx
- 文档编号:18712113
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:24
- 大小:27.99KB
linux常用命令积累Word下载.docx
《linux常用命令积累Word下载.docx》由会员分享,可在线阅读,更多相关《linux常用命令积累Word下载.docx(24页珍藏版)》请在冰豆网上搜索。
―――――――显示index.jsp文件中以“:
”隔开的前三个域
cut-d:
-f1,3index.jsp
―――――――显示index.jsp文件中的每一行的前6个字符
cut-c1-6index.jsp
―――――――将文件index.jsp以1000字节
split-b1000index.jsp
--------------------将文件index.jsp文件中的字符”a”换成“b”
tr–s"
[a]"
“[b]”<
test.txt
--------------------------删除index.jsp文件中的a字符
tr–d"
<
--------------------------文件index.jsp大写到小写转换
tr"
[a-z]"
"
[A-Z]"
index.txt
-------------------------测试文件状态
------------------------测试文件a.log是否可用写0表示真1:
表示假
[-wa.log]或者test–wa.log
参数信息
-d目录-s文件长度大于0、非空
-f正规文件-w可写
-L符号连接-u文件有suid位设置
-r可读-x可执行
----------------------------逻辑运算-a表示与-o表示或
Test–wa.log–a–xa.logtest–wa.log–o–xa.log
Echo$?
可用打印出结果
-------------------------字符串比较
―――――――比较两个字符串是否相等
=两个字符串相等。
!
=两个字符串不等。
-z空串。
-n非空串。
test"
aaa"
="
bbb"
test"
!
="
test–z"
$path"
------------------------------数字比较
-eq数值相等。
-ne数值不相等。
-gt第一个数大于第二个数。
-lt第一个数小于第二个数。
-le第一个数小于等于第二个数。
-ge第一个数大于等于第二个数。
Test12–gl23
----------------------------expr命令一般用于整数值,但也可用于字符串。
一般格式为:
exprargumentoperatorargument
expr12+23
---------------------------vi命令替换,将test替换程jimmy
:
%s/test/jimmy/g
―――――――参数个数测试
echo"
thisisparameterpractice!
!
"
if
[$#-lt3];
then
echo"
theparameterislessthanthree"
;
exit1;
fi
theparameteris:
oneis$1"
oneis$2"
oneis$3"
――――――――――――文件可写脚本
RIGHT=/home/jimmy/ly.log
if[!
-w"
$RIGHT"
];
youcannotwriteanythingtoly.log"
else
youcanwriteanythingtoly.log$RIGHT"
――――――――――――――――测试是否设置了环境变量
iftest-z$EDITOR
theEDITERENVIRONMENTISNOTSET"
theEDITERENVIRONMENTISSETED"
――――――――――――――检查执行当前脚本的用户是否是root账户
if["
$LOGNAME"
root"
]
thisordermustexcutebyroot,$LOGNAME"
>
&
2;
yes,youaretheroot"
1
―――――――――――――――――――――将参数传给系统命令
DIRECTORY=$1;
test-z"
`ls-a$DIRECTORY`"
the$DIRECTORYisEMPTY"
the$DIRECTORYisnotempty"
―――――――――按照输入的参数建立目录,如果目录存在则推出,如果目录不存在则提示用户是否建立,键入“y”则建立文件夹
DIRECTORY=$1
test==============="
$DIRECTORY"
erroryoumustinputtheparameter,Basename$0"
$DIRECTORY======"
if[-d"
the$DIRECTORYisexsit!
:
#donothing
Thedirectorydoesnotexsit"
echo-n"
Createitnow[Y...N]"
readANS
if["
$ANS"
y"
]||["
Y"
Creatingnow"
mkdir$DIRECTORY>
/home/jimmy/ly.log2>
1;
if
test$?
0"
createdir$DIRECTORYerror"
>
fi
else:
――――――――提示用户是否要改变数据。
如果是则提示输入数字,然后将输入的数字相加,最后返回
COUNT=100
doyouwanttochangethe$COUNT"
readtemp
$temp"
enterthevalue"
readvalue
expr$COUNT+100>
./ly.log2>
Status=$?
$value"
$Status"
thereissomeerror"
COUNT=`expr$COUNT+$value`
Nowthecountvalueis:
$COUNT"
――――――输入用户和密码登陆脚本。
。
输入密码是不显示在屏幕上
IVALID_NAME=yes
IVALID_PASS=yes
#将终端信息保存在变量中
SAVEDSTTY=`stty-g`
youwillloggingintosensitivearea:
echo-n"
pleaseentertheusername:
readusername
#将终端的echo属性输入不显示在屏幕上
stty-echo
enterthepassword:
readpassword
#将终端的所有属性还原
stty$SAVEDSTTY
$username"
lzw"
-o"
ly"
IVALID_NAME=no
$password"
IVALID_PASS=no
====$IVALID_NAME===$IVALID_PASS"
$[IVALID_NAME]"
yes"
$IVALID_PASS"
$IVALID_NAME"
theusernameisundifined,youcannotloggingthisarea"
thepasswordisnotright,youcannotloggingthisarea"
―――――――――――――――――case语句,匹配到后立即跳出case语句
echo-n"
pleaseenterthenumber:
readnum
case$numin
1)echo"
youselected1:
;
2)echo"
youselected2:
3)echo"
youselected3:
4)echo"
youselected4:
5)echo"
youselected5:
6)echo"
youselected6:
7)echo"
youselected7:
8|11)echo"
youselected8:
91)echo"
youselected91:
#匹配任意单字字符
?
)echo"
youinputisnotnumberis:
$num"
#匹配任意字符
*)echo"
youselected*:
Esac
――――――――――――――case语句参数传递
if[$#!
=1]
theparametercountmustonlyone:
parm=$1;
case$parmin
start|START)echo"
theprogrameisstarting...."
stop|STOP)echo"
theprogrameisstoping...."
theparameteriswrong...."
――――――――缺省值,如果输入信息只是回车换行,那么就取缺省值
pleaseinputyouname:
readname
===$name=="
younameis....${name:
="
}"
==$name=="
―――――――for循环
thisisloopprograme"
forloopin123456
do
$loop"
done
―――――for循环可用用字符串
forloopinjimmylylzwlzwly56
――――――――用ls作为循环条件
forloopin`ls-a`
―――――――for循环使用参数,将所有参数作为一个条件。
循环一次
forloopin"
$*"
―――――for循环使用参数,将每个参数作为循环条件,每个参数都循环一次
$@"
―――――――――――用for循环ping机器
forloopin172.16.1.2172.16.1.45172.16.1.9172.16.1.1
ping-c2$loop
――――――――for循环备份文件
forloopin`ls`
if[-f$loop]
thencp$loop$loop.bak
――――――――――循环将所有文件中的小写换成大写字母
cat$loop|tr"
|tee-a./log.log
―――――――――until用法,直到用户输入自己的名字后退出
pleaseenteryouname:
until["
$name"
]#判断name是否为空
do
readname
――――――――判断文件是否存在。
如果存在则一直循环。
知道删除了
the_file=/home/jimmy/log.log
until[!
-f$the_file]
sleep1
thefileisexsited"
thefileisdeleted"
――――――――――――――――while循环
count=1
while[$count-lt1000000]
==========$count"
count=`expr$count+1`
―――――――――――――――将文件ping.txt中的内容循环读入,并以“。
”分开显示,IFS用来确定命令中什么样的分隔词被发送到原始的UnixBourneshell,并与其他环境变量一样被传递下去
files=$IFS
IFS=.
whilereadNAMEDEPTID
$NAME\t$DEPT\t$ID\t====="
done<
./ping.txt
IFS=$files
――――――――――――――根据文件的值控制流
$NAME"
='
jimmy'
thenameis:
exit0
―――――――循环读入数据,直到输入exit时才退出
pleaseenterthevalue:
whilereadvalue
exit"
thenexit1
thevalueis$value"
―――――――循环读入文件,以行的方式读入
whilereadaaaa
$aaaa====$count"
done<
―――――linux启动的时候自动启动一些服务配置
在/etc/rc.d/rc.local的最后添加要启动的服务即可
/sbin/servicevsftpdstart
/sbin/servicecrondstart
―――――――exec
exec命令:
常用来替代当前shell并重新启动一个shell,换句话说,并没有启
动子shell。
使用这一命令时任何现有环境都将会被清除,。
exec在对文件描述符进行
操作的时候,也只有在这时,exec不会覆盖你当前的shell环境
――――――――IO详解
I/O重定向详解及例子1、基本概念
a、I/O重定向通常与FD有关,shell的FD通常为10个,即0~9;
b、常用FD有3个,为0(stdin,标准输入)、1(stdout,标准输出)、2(stderr,
标准错误输出),默认与keyboard、monitor、monitor有关;
c、用<
来改变读进的数据信道(stdin),使之从指定的档案读进;
d、用>
来改变送出的数据信道(stdout,stderr),使之输出到指定的档案;
e、0是<
的默认值,因此<
与0<
是一样的;
同理,>
与1>
是一样的;
f、在IO重定向中,stdout与stderr的管道会先准备好,才会从stdin读进资料;
g、管道“|”(pipeline):
上一个命令的stdout接到下一个命令的stdin;
h、tee命令是在不影响原本I/O的情况下,将stdout复制一份到档案去;
i、bash(ksh)执行命令的过程:
分析命令-变量求值-命令替代(``和$())-重
定向-通配符展开-确定路径-执行命令;
j、()将commandgroup置于sub-shell去执行,也称nestedsub-shell,它有
一点非常重要的特性是:
继承父shell的Standardinput,output,anderrorplusany
otheropenfiledescriptors。
k、exec命令:
操作的时候,也只有在这时,exec不会覆盖你当前的shell环境。
2、基本IO
cmd>
file把stdout重定向到file文件中
file把stdout重定向到file文件中(追加)
cmd1>
fiel把stdout重定向到file文件中
file2>
1把stdout和stderr一起重定向到file文件中
cmd2>
file把stderr重定向到file文件中
file把stderr重定向到file文件中(追加)
1把stderr和stderr一起重定向到file文件中
cmd<
file>
file2cmd命令以file文件作为stdin,以file2文
件作为stdout
cat<
file以读写的方式打开file
filecmd命令以file文件作为stdin
<
delimiterHeredocument,从stdin中读入,直至遇到
delimiter分界符
3、进阶IO
n使用系统调用dup
(2)复制文件描述符n并把结果用作标准输出
n标准输入复制自文件描述符n
-关闭标准输入(键盘)
-关闭标准输出
n<
-表示将n号输入关闭
n>
-表示将n号输出关闭
上述所有形式都可以前导一个数字,此时建立的文件描述符由这个数字指定而不是缺省
的0或1。
如:
...2>
file运行一个命令并把错误输出(文件描述符2)定向到file。
1运行一个命令并把它的标准输出和输出合并。
(严格的说是
通过复制文件描述符1来建立文件描述符2,但效果通常是合并了两个流。
)
2>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 常用命令 积累