第一范文网 - 专业文章范例文档资料分享平台

linux环境中Shell命令文本操作命令小结

来源:用户分享 时间:2025/5/29 22:01:15 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

Linux环境中Shell命令文件操作命令小结

Linux下通过命令行操作文件,几个常用命令行操作总结:

显示文本文档中某几行: 显示第n行: sed -n 'np' test.txt

或 head -n test.txt |tail -1 显示第m到第n行: sed -n 'm,np' test.txt

或 head -n test.txt | tail -(n-m)

显示某一文件夹folder/下所占存储空间: du -sh folder/

删除某文件夹下的特定文件: 例:删除某文件加下的软连接文件 rm -f `ls -l|grep ^l|awk `{print $8}` 返回上次进入的目录:cd -

删除一个文本文档中所有内容: 切换到命令行模式 :1,$d

使用rm删除一个目录下的除了ttt以外的所有文件 解决:

1. ls | grep -v ttt | xargs rm {} 2. ls | grep -v ttt | xargs rm

3. mv ttt /tmp/ && rm -rf * && mv /tmp/ttt ./ 4. find . -name e -prune -o -print | xargs rm -rf

5. find . -name e -prune -o -name dir -prune -o -print | xargs rm -rf {} 6. 删除目录下的除去ttt和目录外所有文件 d=/tjy/

for i in `ls $d`; do if [ $i != \

j=`file $d$i | awk '{print $2}'` if [ $j != \rm -rf $d$i fi fi done

利用shell命令分割文件:

系统运维的过程中,日志文件往往非常大,这样就要求对日志文件进行分割,在此特用shell脚本对文件进行分割 方法一: #!/bin/bash

linenum=`wc -l httperr8007.log| awk '{print $1}'` n1=1 file=1

while [ $n1 -lt $linenum ] do

n2=`expr $n1 + 999`

sed -n \ n1=`expr $n2 + 1` file=`expr $file + 1` done

其中httperr8007.log为你想分割的大文件,file_$file.log 为分割后的文件,最后为file_1.log,file_2.log,file_3.log……,分割完后的每个文件只有1000行(参数可以自己设置) 方法二: split 参数:

-b :后面可接欲分割成的档案大小,可加单位,例如 b, k, m 等; -l :以行数来进行分割; #按每个文件1000行来分割除 split -l 1000 httperr8007.log httperr httpaa,httpab,httpac ........ #按照每个文件100K来分割 split -b 100k httperr8007.log http httpaa,httpab,httpac ........

使用alias来自定义命令

还有一个使工作变得轻松的方法是使用命令别名。命令别名通常是其他命令的缩写,用来减少键盘输入。 命令格式为:

alias [alias-name=’original-command’]

其中,alias-name是用户给命令取的别名,original- command是原来的命令和参数。需要注意的是,由于Bash是以空格或者回车来识别原来的命令的,所以如果不使用引号就可能导致Bash只截取第一个字,从而出现错误。如果alias命令后面不使用任何参数,则显示当前正在使用的被别名化的命令及其别名。为命令取的别名在该次登录期间始终有效。如果用户需要别名在每次登录时都有效,那么就将alias命令写到初始化脚本文件中。

这是一些很多人认为有用的别名,可以把它们写入初始化脚本文件中来提高工作效率: alias ll=’ls –l’ alias log=’logout’ alias ls=’ls –F’

如果您是一名DOS用户并且习惯了DOS命令,可以用下面的别名定义使 Linux表现得象DOS一样: alias dir=’ls’ alias copy=’cp’ alias rename=’mv’ alias md=’mkdir’ alias rd=’rmdir’

注意:在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需要引号。如果键入不带任何参数的alias命令,将显示所有已定义的别名。

linux环境中Shell命令文本操作命令小结.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c30uby2w5150vngk58yua7wp9920czo00zvs_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top