一.常用目录命令
1.显示当前目录 pwd
2.改变当前目录cd
2.1 从当前目录跳转/user/bin
cd /user/bin
2.2跳回当前home目录
cd ~
2.3 跳到目前目录的上上两层
cd ../..
2.4跳到目前目录的上一层
cd ..
2.5跳到当前目录的子目录Music
cd ./Music
2.6返回上一次所在的目录
cd -
3.显示目录内容 ls
3.1 显示当前目录下以D开头的文件
ls -lt ./D*
4.创建目录 mkdir
参数:-p 确保目录名称存在,不存在的就建一个
mkdir -p BBB/Test
5.删除目录rm/rmdir
1)rm
参数
2)rmdir
例子:
rmdir -p BBB/Test
二.常用文件命令
1.新建空文件touch
2.将文件拷贝至另一文件cp
cp[options] source... directory
cp -r Finished/* new/
3.文件或目录的移动或更名mv
mv [options]source... directory
4.创建文件链接ln
小帖士:
删除文件不同:
三.查找文件
1.查找文件whereis
-b 只查找二进制文件。
-B< 目录 > 只在设置的目录下查找二进制文件。
-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M< 目录 > 只在设置的目录下查找说明文件。
-s 只查找原始代码文件。
-S< 目录 > 只在设置的目录下查找原始代码文件。
-u 查找不包含指定类型的文件。
2.which
-n< 文件名长度 > 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p< 文件名长度 > 与 -n 参数相同,但此处的 < 文件名长度 > 包括了文件的路径。
-w 指定输出时栏位的宽度。
-V 显示版本信息。
使用which命令查看grep命令是否存在以及存在的目录的命令为”which grep“。
3.find
Linux中查找文件的命令通常为find命令。find命令能够帮助在使用、管理linux的日常事务中,方便地查找所需要的文件。find命令可以按文件名、建立或修改日期、所有者(通常是建立文件的用户)、文件长度或文件类型进行搜索。
-mount,-xdev :只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-aminn :在过去n分钟内被读取过
-anewerfile :比文件file更晚被读取过的文件
-atimen :在过去n天过读取过的文件
-cminn :在过去n分钟内被修改过
-cnewerfile :比文件file更新的文件
-ctimen :在过去n天过修改过的文件
-empty : 空的文件-gid n or -group name :gid是n或是group名称是 name
-print : find 命令将匹配的文件输出到标准输出。
-ipathp, -path p :路径名称符合p的文件,ipath会忽略大小写
-namename, -inamename :文件名称符合name的文件。iname会忽略大小写
-sizen : 文件大小 是 n 单位,b代表512位元组的区块,c表示字元数,k表示kilo bytes,w是二个位元组。-type c :文件类型是c的文件。
d:目录
c:字型装置文件
b:区块装置文件
p:具名贮列
f:一般文件
l:符号连结
s: socket
-pidn : process id是n的文件
3.locate命令
-u :建立数据库时,由根目录开始
-U <dir> :建立数据库时,可以指定开始的位置
-e<dir> :将<dir>排除在寻找的范围之外
-l<level> :如果<level>是1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到的文件。
-f<filetype>:将特定的文件系统排除在外
-q :安静模式,不会显示任何错误讯息
-n :至多显示n个输出
-r :使用正规运算式 做寻找的条件
-o :指定数据库存的名称
-d :指定数据库的路径
-h :显示辅助讯息
-v :显示更多的讯息
-V :显示程序的版本讯息
5. grep命令
基本格式:grep expression
1.主要参数
[options]主要参数:
-c:只输出匹配行的计数。
-i:不区分大小写
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
.:所有的单个字符。
* :有字符,长度可以为0。
2.实例
(1)grep 'test' d* #显示所有以d开头的文件中包含 test的行
(2)grep ‘test’ aa bb cc #显示在aa,bb,cc文件中包含test的行
(3)grep ‘[a-z]\{5\}’ aa #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
(4)grep magic /usr/src #显示/usr/src目录下的文件(不含子目录)包含magic的行
(5)grep -r magic /usr/src #显示/usr/src目录下的文件(包含子目录)包含magic的行
(6)grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),
四.文件压缩
1.压缩命令tar(新建一个压缩包.tar)
tar [参数][文件或目录] 解压缩文件
示例:
命令格式:tar cvf 文件名.tar 原文件或目录
命令格式:tar cvfz 文件名.tar.gz(tar包文件名tgz ) 原文件或目录
命令格式:tar cvfj 文件名.tar.bz2 原文件或目录
命令格式:tar tf tar包文件名.tar
命令格式:tar tfz tar包文件名.tar.gz
命令格式:tar tfj tar包文件名.tar.bz2
2.压缩命令
gzip (直接把源文件压缩为 源文件名.gz)
压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字
gzip *
gzip -dv * 或 gunzip *
gzip -l *
3.解压缩文件gunzip
或 gunzip [-acfhlLnNqrtvV][-s ][目录]
事实上 gunzip 就是 gzip 的硬连接,因此不论是压缩或解压缩,都可通过 gzip 指令独立完成。
-a 或 -- ascii 使用 ASCII 文字模式。
-c 或 -- stdout 或 --to- stdout 把解压后的文件输出到标准输出设备。
-f 或 -force 强行解开压缩文件,不理会文件名称或硬连接是否存在及该文件是否为符号连接。
-h 或 --help 在线帮助。
-l 或 --list 列出压缩文件的相关信息。
-L 或 --license 显示版本和版权信息。
-n 或 --no-name 解压缩时,若压缩文件内含有远来的文件名称及时间戳记,则将其忽略不予处理。
-N 或 --name 解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上。
-q 或 --quiet 不显示警告信息。
-r 或 --recursive 递归处理,将指定目录下的所有文件及子目录一并处理。
-S 或 --suffix 更改压缩字尾字符串。
-t 或 --test 测试压缩文件是否正确无误。
-v 或 --verbose 显示指令执行过程。
-V 或 --version 显示版本信息。
4.备份压缩--zip
-A 调整可执行的自动解压缩文件。
-b< 工作目录 > 指定暂时存放文件的目录。
-c 替每个被压缩的文件加上注释。
-d 从压缩文件内删除指定的文件。
-D 压缩文件内不建立目录名称。
-f 此参数的效果和指定 "-u" 参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
-F 尝试修复已损坏的压缩文件。
-g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h 在线帮助。
- i < 范本样式 > 只压缩符合条件的文件。
-j 只保存文件名称及其内容,而不存放任何目录名称。
-J 删除压缩文件前面不必要的数据。
-k 使用 MS-DOS 兼容格式的文件名称。
-l 压缩文件时,把 LF 字符置换成 LF+CR 字符。
- ll 压缩文件时,把 LF+CR 字符置换成 LF 字符。
-L 显示版权信息。
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-n<字尾字符串> 不压缩具有特定字尾字符串的文件。
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q 不显示指令执行过程。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-S 包含系统和隐藏文件。
-t<日期时间> 把压缩文件的日期设成指定的日期。
-T 检查备份文件内的每个文件是否正确无误。
-u 更换较新的文件到压缩文件内。
-v 显示指令执行过程或显示版本信息。
-V 保存VMS操作系统的文件属性。
-w 在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。
-x<范本样式> 压缩时排除符合条件的文件。
-X 不保存额外的文件属性。
-y 直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。
-z 替压缩文件加上注释。
-$ 保存第一个被压缩文件所在磁盘的卷册名称。
-<压缩效率> 压缩效率是一个介于1-9的数值。
例子:
1. 将当前目录下所有文件和文件夹以最快速速压缩成ys.zip文件。
#zip -r1 ys.zip *
2. 将当前目录下所有文件和文件夹以最高的压缩比压缩成到/root目录下,以ys.zip命名。
#zip -r9 /root/ys.zip *
2. 将压缩文件text.zip在当前目录下解压缩。
#unzip text.zip
3. 将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,需求unzip命令不覆盖原先的文件。
#unzip -n text.zip -d /tmp
4. 查看压缩文件目录,但不解压。
#unzip -v text.zip
5.解备份压缩—unzip
或 unzip [-Z]
补充说明: unzip 为 .zip 压缩文件的解压缩程序。
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
-f 更新现有的文件。
-l 显示压缩文件内所包含的文件。
-p 与 -c 参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
-t 检查压缩文件是否正确。
-u 与 -f 参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 执行是时显示详细的信息。
-z 仅显示压缩文件的备注文字。
-a 对文本文件进行必要的字符转换。
-b 不要对文本文件进行字符转换。
-C 压缩文件中的文件名称区分大小写。
-j 不处理压缩文件中原有的目录路径。
-L 将压缩文件中的全部文件名改为小写。
-n 解压缩时不要覆盖原有的文件。
-o 不必先询问用户,unzip执行后覆盖原有文件。
-P<密码> 使用zip的密码选项。
-q 执行时不显示任何信息。
-s 将文件名中的空白字符转换为底线字符。
-V 保留VMS的文件版本信息。
-X 解压缩时同时回存文件原来的UID/GID。
[.zip文件] 指定.zip压缩文件。
[文件] 指定要处理.zip压缩文件中的哪些文件。
-d<目录> 指定文件解压缩后所要存储的目录。
-x<文件> 指定不要处理.zip压缩文件中的哪些文件。
-Z unzip -Z等于执行zipinfo指令。
1. 将当前目录下所有文件和文件夹以最快速速压缩成ys.zip文件。
#zip -r1 ys.zip *
2. 将当前目录下所有文件和文件夹以最高的压缩比压缩成到/root目录下,以ys.zip命名。
#zip -r9 /root/ys.zip *
2. 将压缩文件text.zip在当前目录下解压缩。
#unzip text.zip
3. 将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,需求unzip命令不覆盖原先的文件。
#unzip -n text.zip -d /tmp
4. 查看压缩文件目录,但不解压。
#unzip -v text.zip
#zip -r1 ys.zip *
2. 将当前目录下所有文件和文件夹以最高的压缩比压缩成到/root目录下,以ys.zip命名。
#zip -r9 /root/ys.zip *
2. 将压缩文件text.zip在当前目录下解压缩。
#unzip text.zip
3. 将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,需求unzip命令不覆盖原先的文件。
#unzip -n text.zip -d /tmp
4. 查看压缩文件目录,但不解压。
#unzip -v text.zip
五.查看文件
1.cat命令
命令的格式: cat [ - 选项 ] 文件
使用权限:所有使用者
使用方式:cat [-AbeEnstTuv] [--help][--version] fileName
参数:
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank和 -n 相似,只不过对于空白行不编号
-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 --show-nonprinting例子:
cat example.txt
显示结束:北京欢迎您!
cat -n textfile1 >textfile2
cat -b textfile1textfile2 >> textfile3
cat /dev/null> /etc/test.txt
2.more命令
more -s testfile
more +20 testfile
3.less命令
命令的格式: less [ - 选项 ] 文件
用less命令显示文件时,若需要在文件中往前移动,按< b >键;要移动到用文件的百分比表示的某位置,则指定一个0到100之间的数,并按< p >即可。
4.head命令
如果用户希望查看一个文件究竟保存的是什么内容,可以只查看文件的头几行,而不必浏览整个文件。用head命令只显示文件或标准输入的头几行。
5.tail命令
如果用户想查看文件的尾部,可以使用tail命令。
-n 只显示后面的n行。
-f 动态显示,常用于跟踪消息文件。
例子:
1)按页显示test文件内容。
less test
2)显示文件example.c的前3行。
head - 3 example.c
3)显示文件example.c的前10行。
tail -10 example.c
六.其他命令
1.clear清屏命令
2.alias设置别名
功能说明:设置指令的别名。
语 法:alias[别名]=[指令名称]
形如: alias cp=“cp -i” ;
补充说明:用户可利用alias,自定指令的别名。若仅输入alias,则可列出目前所有的别名设置。 alias的效力仅及于该次登入的操作。若要每次登入是即自动设好别名,可在/etc/profile或自己的~/.bashrc中设定指令的别名。
还有,如果你想给每一位用户都生效的别名,请把alias la='ls -al' 一行加在/etc/bashrc最后面,bashrc是环境变量的配置文件 /etc/bashrc和~/.bashrc 区别就在于一个是设置给全系统一个是设置给单用户使用 有,如果你想给每一位用户都生效的别名,请把alias la='ls -al' 一行加在/etc/bashrc最后面,bashrc是环境变量的配置文件 /etc/bashrc和~/.bashrc 区别就在于一个是设置给全系统一个是设置给单用户使用
参 数:若不加任何参数,则列出目前所有的别名设置。
3.unalias清除别名
语法
unalias [-a][别名]
参数:
- -a 删除全部的别名。
实例
给命令设置别名
[root@w3cschool.cc ~]# alias lx=ls [root@w3cschool.cc ~]# lx anaconda-ks.cfg Desktop install.log install.log.syslog qte
4.date日期命令
语法
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
参数说明:
- -d datestr : 显示 datestr 中所设定的时间 (非系统时间)
- --help : 显示辅助讯息
- -s datestr : 将系统时间设为 datestr 中所设定的时间
- -u : 显示目前的格林威治时间
- --version : 显示版本编号
实例
显示当前时间
# date 三 5月 12 14:08:12 CST 2010 # date '+%c' 2010年05月12日 星期三 14时09分02秒 # date '+%D' //显示完整的时间 05/12/10 # date '+%x' //显示数字日期,年份两位数表示 2010年05月12日 # date '+%T' //显示日期,年份用四位数表示 14:09:31 # date '+%X' //显示24小时的格式 14时09分39秒
按自己的格式输出
# date '+usr_time: $1:%M %P -hey' usr_time: $1:16 下午 -hey
显示时间后跳行,再显示目前日期
date '+%T%n%D'
显示月份与日数
date '+%B %d'
显示日期与设定时间(12:34:56)
date --date '12:34:56'其他常用命令可以参考菜鸟教程http://www.runoob.com/linux/linux-comm-date.html