在linux下用过的清屏方法.clear命令、这个命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息.
Ctrl+l(小写的L)、这是一个清屏的快捷键,这个是笔者在工作中用得最多的一种清屏方式,清屏效果同clear命令一样.
reset命令、这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少.值得一提的是reset命令在你的终端控制错乱时非常有用.如输入字符不出现在光标的位置的情况.还有当你敲击回车键时,新提示符并没有出现在新行上而是出现在老提示符的前面.此时reset命令就能用来修正这些问题.
键盘上Ctrl+v---Esc--输入c再回加.但如果你发现自己使用的是一个非常奇怪的终端(如笔者曾经在putty上作过测试),那这个命令你可能用不了.? printf是bash里内置的命令,内置命令的优先级比其它可执行文件要高.
清除linux的history 命令历史记录只需要一个步骤,如下:
-c 参数命令:将目前的shell中的所有 history 内容全部消除,下图是执行效果,执行history -c命令后,之前的所有的记录都可以清除.
输入以上命令即可删除linux的history 命令历史记录.
clear
这个命令是用来清除屏幕的,它不需要任何参数,和dos下面的cls具有相同的功能,如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息. ln[link]
这是linux中又一个非常重要命令,请大家一定要熟悉.它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln –s源文件目标文件.
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间.例如:ln –s /bin/less /usr/local/bin/less
-s 是代号(symbolic)的意思.
这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接有软链接和硬链接两种,软链接就是ln –s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化.
e.g. grep -nr network_ssl ./ [查找当前文件夹下所有文件内容,列出包含有 network_ssl该字串的行,并显示行号]
参数说明: -a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
-A NUM:同时输出匹配行的后NUM行.
-B NUM:同时输出匹配行的前NUM行.
-C NUM:同时输出匹配行的前、后各NUM行.
-r :明确要求搜索子目录:grep -r 或忽略子目录:grep -d skip 如果有很多 输出时,您可以通过管道将其转到'less'上阅读:$ grep magic /usr/src/Linux/Documentation/* | less 这样,您就可以更方便地阅读. find / -name *.txt -print 用于查找所有的' *.txt'文件在当前目录及子目录中;
find / -name [A-Z]* -print 用于当前目录及子目录中查找文件名以一个大写字母开头的文件;
find /etc -name host* -print 在/etc目录中查找文件名以host开头的文件;
①.、find命令的一般形式为;
find pathname -options [-print -exec -ok ...]
pathname: find命令所查找的目录路径.例如用.来表示当前目录,用/来表示系统根目录.
-print: find命令将匹配的文件输出到标准输出.
-exec: find命令对匹配的文件执行该参数所给出的shell命令.相应命令的形式为'command' { } \;,注意{ }和\;之间的空格.
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行.
-name
按照文件名查找文件.
-perm
按照文件权限来查找文件.
-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略.
-user
按照文件属主来查找文件.
-group
按照文件所属的组来查找文件.
-mtime -n +n
按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前.find命令还有-atime和-ctime 选项,但它们都和-m time选项.
-nogroup
查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在.
-nouser
查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在.
-type
查找某一类型的文件,诸如:
b -块设备文件.
d -目录.
c -字符设备文件.
p - 管道文件.
l -符号链接文件.
f - 普通文件.
-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计.
-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找.
-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息.
-mount:在查找文件时不跨越文件系统mount点.
-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件.
-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中.
另外,下面三个的区别:
-amin n
查找系统中最后N分钟访问的文件
-atime n
-cmin n
查找系统中最后N分钟被改变文件状态的文件
-ctime n
-mmin n
查找系统中最后N分钟被改变文件数据的文件
-mtime n
语 法:ar[-dmpqrtx][cfosSuvV][a成员文件][b成员文件][i成员文件][备存文件][成员文件]
补充说明:ar可让您集合许多文件,成为单一的备存文件.在备存文件中,所有成员文件皆保有原来的属性与权限.
参 数:
指令参数
-d 删除备存文件中的成员文件.
-m 变更成员文件在备存文件中的次序.
-p 显示备存文件中的成员文件内容.
-q 将文件附加在备存文件末端.
-r 将文件插入备存文件中.
-t 显示备存文件中所包含的文件.
-x 自备存文件中取出成员文件.
选项参数
a成员文件 将文件插入备存文件中指定的成员文件之后.
b成员文件 将文件插入备存文件中指定的成员文件之前.
c 建立备存文件.
f 为避免过长的文件名不兼容于其他系统的ar指令指令,所以呢可利用此参数,截掉要放入备存文件中过长的成员文件名称.
i成员文件 将文件插入备存文件中指定的成员文件之前.
o 保留备存文件中文件的日期.
s 若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表.
S 不产生符号表.
u 只将日期较新文件插入备存文件中.
v 程序执行时显示详细的信息.
rpm
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了.
常用rpm命令
查询rpm软件包
#rpm -q软件包名
#rpm -qa //查询安装的所有软件包
#rpm -qa|grep软件包字符串
#rpm -qf /bin/命令//查询命令由哪些软件包安装得到
#rpm -qi软件包名 //查询软件包的详细信息
#rpm -ql软件包名 //查询软件包的安装位置
软件包的安装
#rpm -ivh软件包
软件包的升级
#rpm -Uvh软件包
软件包的卸载
#rpm -e软件包名
Linux中最危险的10个命令
对于编程人员或或者Linux系统管理员来说,操作Linux系统最常见的方法就是使用命令行.当然,Linux命令行佷有用、很高效,但有时候也很危险,尤其是在你误操作或者不确定你自己在正在做什么的时候.下面我就为大家盘点最危险是10个命令,一起来看看吧!
当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普 通用户身份下,破坏的只是自己的一亩三分地.
① rm -rf 命令
rm -rf命令是删除文件夹及其内容最快的方式之一.仅仅一丁点的敲错或无知都可能导致不可恢复的系统崩坏.下列是一些rm 命令的选项.
rm 命令在Linux下通常用来删除文件.
rm -r 命令递归的删除文件夹,甚至是空的文件夹.(译注:个人认为此处应该是说错了,从常识看,应该是"甚至是非空的文件夹")
rm -f 命令能不经过询问直接删除'只读文件'.(译注:Linux下删除文件并不在乎该文件是否是只读的,而只是在意其父目录是否有写权限.所以,-f这个参数 只是表示不必一个个删除确认,而是一律悄悄删除.另外,原始的rm命令其实也是没有删除提示的,只是一般的发行版都会将rm通过别名的方式增加-i参数来 要求删除确认,而-f则抑制了这个提示.)
rm -rf / : 强制删除根目录下所有东东.(就是说删除完毕后,什么也没有了...)
rm -rf *: 强制删除当前目录的所有文件.
rm -rf . : 强制删除当前文件夹及其子文件夹.
从 现在起,当你要执行rm -rf命令时请留心一点.我们可以在".bashrc"文件对'rm'命令创建rm -i的别名,来预防用 'rm'命令删除文件时的事故,它会要求你确认每一个删除请求.(译注:大多数发行版已经这样做了,如果还没有,请这样做,并在使用-f参数前一定考虑好 你在做什么!译者本人有着血泪的教训啊.)
这就是个fork 炸弹的实例.具体操作是通过定义一个名为 ':'的函数,它会调用自己两次,一次在前台另一次运行在后台.它会反复的执行下去直到系统崩溃.
:(){:|:};:
哦?你确认你要试试么?千万别在公司正式的服务器上实验啊~~
上列命令会将某个'命令'的输出写到块设备/dev/sda中.该操作会将在块设备中的所有数据块替换为命令写入的原始数据,从而导致整个块设备的数据丢失.
这 个命令会移动某个'文件夹'到/dev/null.在Linux中 /dev/null 或 null 设备是一个特殊的文件,所有写入它的数据都会被清除,然后返回写操作成功.(译注:这就是黑洞啊.当然,要说明的是,通过将文件夹移动到黑洞,并不能阻止 数据恢复软件的救赎,所以,真正的+彻底毁灭,需要采用专用的软件或者手法来完成——我知道你肯定有些东西想删除得干干净净的.)
# mv /home/user/* /dev/null
上列命令会将User目录所有内容移动到/dev/null,这意味着所有东西都被'卷入'黑洞 (null)之中.
上列命令常用来清空文件内容(译注:通常也用于记录命令输出. 不过请在执行前,确认输出的文件是空的或者还不存在,否则原来的文件可真是恢复不了了——连数据恢复软件都未必能帮助你了.另外,我想你可能真正想用的是 "",即累加新的输出到文件,而不是刷新那个文件.).如果用上列执行时输入错误或无知的输入类似 "xt.conf" 的命令会覆盖配置文件或其他任何的系统配置文件.
上列命令会向块设备sda写入随机的垃圾文件从而擦出数据.当然!你的系统可能陷入混乱和不可恢复的状态.(译注:记得上面说过mv到黑洞并不能彻底删除数据么?那么这个命令就是给了你一个彻底删除的方法!当然为了保险起见,你可以覆写多次.)
①.0. 隐藏命令
下面的命令其实就是上面第一个命令 (rm -rf).这里的代码是隐藏在十六进制里的,一个无知的用户可能就会被愚弄.在终端里运行下面命令可能会擦除你的根分区.
注意: 不要在你的或你的同学或学校的电脑里的Linux终端或Shell执行以上的任何一个命令,因为这将导致数据丢失或者系统崩溃.如果你想测试它们,请在虚拟机上运行.
;
直接输入 exit回车即可退出当前终端,或者按CTRL+D也可退出当前终端
Ubuntu Linux与Windows系统不同,Ubuntu Linux不会产生无用垃圾文件,但是在升级缓存中,Ubuntu Linux不会自动删除这些文件,今天就来说说这些垃圾文件清理方法.
①.,非常有用的清理命令:
sudo apt-get autocleansudo apt-get cleansudo apt-get autoremove
这三个命令主要清理升级缓存以及无用包的.
ls ~/.mozilla/firefox/*.default/Cache
图形界面下我们可以用:gtkorphan
sudo apt-get install gtkorphan -y
终端命令下我们可以用:deborphan
sudo apt-get install deborphan -y
这个东西一般我只要安装Ubuntu就会第一删掉tracker 他不仅会产生大量的cache文件而且还会影响开机速度.所以在新得利里面删掉就行.
打开终端敲命令:dpkg --get-selections|grep linux
有image的就是内核文件
删除老的内核文件:
最后不要忘了看看当前内核:uname -a
附录:
包管理的临时文件目录:
包在
/var/cache/apt/archives
/var/cache/apt/archives/partial