字符界面最重要的内容当然还是要记住各种命令了!下面我们来介绍一个字符界面下各种常用的操作命令。


常用的文本目录操作命令:


ls显示文件和目录


touch创建一个空文件或改变文件的创建时间


cp复制文件或目录


rm删除文件或目录


mv移动文件或目录,文件或目录改名


ln建立链接文件



pwd显示当前工作目录


cd切换目录


find在文件系统只查找指定文件


mkdir创建目录


rmdir删除目录


tree显示目录树



文件打包和压缩


把一组文件和目录变成一个文件是文件打包,把打包好的文件在进行压缩就是文件的压缩。通常在给系统进行备份的时候都需要把文件进行打包,来方便我们把文件放到另一个文件夹甚至另一台计算机。想要加快打包文件在互联网上的传输可以将打包文件压缩已减小文件的大小。


打包文件和压缩文件都是文件和目录的集合,打包文件的大小和文件目录的集合一样,压缩文件的大小通常比文件和目录的集合要小。


下面看看常用的打包压缩命令:



命令说明


tar打解包命令,用于文件归档


gzip压缩(解压)文件或目录,压缩后的文件后缀为.gz


compress压缩(解压)文件或目录,压缩后的文件后缀为.Z


bzip2压缩(解压)文件或目录,压缩后的文件后缀为.bz2



Linux系统通常使用tar命令带参数来调用各种压缩和解压程序,下面我们来举几个例子:


tar-cvf myball.tar mydirmydir打包成myball.tar


tar-tfmyball.tar 查看myball.tar


tar-xvf myball.tarmyball.tar在当前目录下解包


tar-zcvf myball.tar.gz mydirmydir打包,并压缩为.gz格式


tar-ztf myball.tar.gz 查看myball.tar.gz文件


tar -zxvf myball.tar.gz 在当前目录下解压myball.tar.gz文件


tar -Zcvf myball.tar.Z mydir mydir打包,并压缩为.Z格式


tar -Ztf myball.tar.Z 查看myball.tar.Z文件


tar-Zxvf myball.tar.Z 在当前目录下解压缩myball.tar.Z文件


tar-jcvf myball.tar.bz2 mydirmydir打包,并压缩为.bz2格式


tar-jtf myball.tar.bz2 查看myball.tar.bz2文件


tar -jxvf myball.tar.bz2 在当前目录下解压缩myball.tar.bz2文件


常用文本文件操作命令:


cattac显示文本文件内容


moreless分页显示文本文件内容


head,tail显示文本文件头几行或后几行


cut纵向切割指定的文本文件内容


paste纵向合并多个文本文件


grep通过关键字抽出文本文件指定的行


wc文本字符统计


sort按行给文本文件排序


uniq删除文本文件的重复行


diff显示两个文本文件的不同


expand将制表符转换为空格


unexpand将空格转换为制表符


dos2unix DOS格式文件转换为unix格式


unix2dosunix格式文件转换为DOS格式


iconv将文本文件从一个格式转换为另一个格式


awkawk是处理文字的编程语言工具,它用来处理有格式的文本


sed流编辑器,在非交互模式下做字符替换。


tr字符替换



正则表达式:


正则表达式是用某种模式匹配一类字符串的一个公式,一般用来匹配和替换字符串。正则表达式对于初学者来讲晦涩难懂,但是作为一个LINUX使用者学会使用这个则表达式是非常必要的,它能在特定情况下是工作效率提高。POSIX风格的正则表达式分为两种,一种是基本的正则表达式的(Basic regular expression),另一种是扩展的正则表达式(Extended regular expression)。正则表达式由普通字符和元字符组成,普通字符是大小写字母和数字组成,元字符具有特殊意义。下面介绍一下正则表达式的元字符。


符号描述举例


^ 匹配首字符^x 匹配第一个字符是x的字符串


$ 匹配尾子符x$ 匹配最后一个字符是x的字符串


. 匹配任何一个字符.bc 匹配abc,bbc,cbc,dbc,ebc,fbc.....等等


? 匹配任何一个可选字符abc? 匹配ab,abc


* 匹配重复字符0次到多次abc* 匹配ab,abc,abcc,abccc,abcccc等等


+ 匹配重复字符1次到多次abc+ 匹配abc,abcc,abccc,abcccc等等


[...] 匹配之间的任意一个字符[abc] 匹配abc


() 给正则表达式分组


/{n/} 重复nabc/{3/} abccc


/{n,/} 重复最少nabc/{3,/}abccc,abcccc,abccccc...等等


/{n,m/} 重复nmabc/{2,4/}abcc,abccc,abcccc


{n} 重复n


{n,} 重复最少n


{n,m} 重复nm


| 以或逻辑连续匹配多个


/ 转义字符


下面来介绍一下可以在[ ]中使用的元字符


符号描述举例


^ [^xyz]不能使xyz


- 范围符号(不可以使首尾字符) [a-zA-Z]二十六个英文字母


/ 转移字符 // 表示/


以上是正则表达式的简要介绍,如果还想要深入了解,可以购买相关书籍或者百度一下^_^



下面我们来介绍一下linux的信息显示命令:


Linux的信息显示命令主要分为八类,分别是文件、系统、资源、分区、文件系统、用户、进程、网络。我们来分别介绍一下他们的命令,还是那句话如果要深入了解各个命令请您参看帮助文档O(_)O。下面开始逐一介绍。

文件的信息显示命令举例:

Stat显示文件的相关信息stat file1显示file1的各种相关属性信息

File显示文件类型file file1 显示file1的文件类型


系统的信息显示命令举例:

hostname 显示系统的主机名

uname显示操作系统的信息

dmesg系统启动的信息

lsmod显示系统的加载模块信息

date 显示系统时间

cat /etc/redhat-release显示操作系统的内核信息

cat /proc/cpuinfo显示cpu信息

lspci/lsusb显示pciusb信息


资源的信息显示命令:

top当前占用系统资源最多的进程

free显示内存和交换空间的使用情况

du -h显示指定文件(目录)已经使用的磁盘空间的情况

df -h显示文件系统的磁盘空间总体使用情况

uptime 显示系统上线时间,用户数,平均负载


分区信息显示命令举例:

fdisk -l显示所有磁盘分区


文件系统信息显示命令举例:

swapon -s查看所有交换分区

mount显示所有挂装项


用户信息显示命令举例:

whow在线登陆的用户信息

whoami显示用户自己的身份

ID显示用户的id

groups显示用户属于哪些组

crontab -l显示该用户的所有计划任务


进程的信息显示命令举例:

ps -ef显示所有进程

pstree显示进树


网络的信息显示命令举例:

ifconfig显示系统接口信息

netstat显示网络状态

以上对linux系统的信息显示命令做了简要介绍,下面我将给大家介绍几种可以减少命令输入量的技巧O(_)O,分别是命令追加、历史命令、命令别名。

命令追加:我们在操作linux字符界面的时候,对于要输入大量字符一定非常的头疼,这一点linux系统也做了相应的措施给大家降低输入量。首先我们在输入的时候不是非要把所有命令和参数全都敲打出来才可以,例如:

输入 ls -l系统列出如下:

usr abc bbb ddff

我们想使用命令cat来查看这里的某个文件,我们输入cat u之后按下<tab>,系统就会自动把后面的几个字母补全,这样我们在输入命令的时候输入量就减少了。还有如果我们按下<tab>出现蜂鸣声优两种情况,一个是没有合适的命令来补全,另一个是有多个候选命令,如果是第二种我们只要再按一下<tab>键,系统就会把所有匹配的命令列出来,我们在继续输入后面的字母最终匹配的命令就会出现了。

历史命令:如果我们在进行操作的时候要经常重复输入几个命令的话,我们可以使用linux的历史命令来简化我们的操作。Bash可以存储多个之前输入的命令给,为我们以后重复使用提供方便。存储历史命令的数量有环境变量HISTSIZE值指定,历史命令存储的路径由HISTFILE来指定,所有历史命令都存储在用户私有目录中的.basn_history隐含文件中。

只在文件中存储了历史命令式没有用的,如果要使用历史命令还要进行如下操作:

1.最简单的使用方法是按上下键和PgupPgdn键来选择历史命令

2.选择历史命令后可以使用键盘来修改历史命令。

3.使用history命令来查看所有历史命令

4.使用! <命令事件号>来使用历史命令,只用!使用最近的历史命令

5.使用! <已经使用过的命令的前半部分>

命令别名:有时候系统本身的命令我们可能用着不习惯,例如,命令太长、太复杂、太难记。给命令起一个我们自己容易记住的别名是一个提高工作效率的好办法,例如:

alias<aliasname=originalname>

这里面的aliasname是用户给起的别名,originalname是命令本身的名字和参数。我们也可以把别名定为已经存在的命令,那样的话在使用这个命令的时候系统会优先别名,假如使用的时候想让这个别名我们可以在这个命令前面加上/符号。

Alias命令设置的别名在从新登陆以后会失效,如果用户想要让每次登陆系统别名都起作用可以修改用户私有目录下的.bashrc文件。

如果要取消一个别名也很简单,只要使用命令unalias <aliasname>即可。