1、ls
(1)作用:列出目录的内容
(2)格式:ls [选项] [文件]
(3)常见参数
ls -c 按时间由近及远排列
ls -c -lt 按时间排列,并显示时间
ls -c -l 显示时间,按文件名称排列
ls -C 按文件名排列
ls -i 打印文件的inode号
ls -si/s 列出文件的大小,1000字节为单位
ls -l 列出文件所有信息
ls -m 输出格式以冒号分隔
ls -r 反序排列
ls -R 列出所有子目录
ls -S 按文件大小由大到小排列
ls -u -t 按访问时间排序
ls -U 按文件系统原始顺序输出
ls -v 按版本排序
ls -1 每行只显示一个文件
ls --version 显示版本信息并离开
(4)使用实例
pp@pp-virtual-machine:~/lua$ ls -l
总用量 68
-rw-rw-r-- 1 pp pp 38 12月 1 09:06 e12.lua
-rw-rw-r-- 1 pp pp 480 12月 1 09:34 e13.cpp
-rw-rw-r-- 1 pp pp 460 12月 1 09:29 e14.c
-rwxrw-r-- 1 pp pp 7344 12月 1 09:19 lauxlib.h
drwxrwxrwx 4 pp pp 4096 11月 10 2013 lua-5.2.3
-rwxrw-r-- 1 pp pp 15436 12月 1 09:18 luaconf.h
-rwxrw-r-- 1 pp pp 13602 12月 1 09:18 lua.h
-rwxrw-r-- 1 pp pp 1099 12月 1 09:18 lualib.h
-rw-rw-r-- 1 pp pp 32 12月 1 20:13 test.lua
-rw-rw-r-- 1 pp pp 271 12月 1 20:21 testlua.c
上面显示出的详细信息格式如:文件类型与权限 链接数 文件属主 文件属组 文件大小 文件修改时间 文件名字
2、pwd
(1)作用:显示出当前工作目录的绝对路径
(2)格式:pwd
(3)使用实例
pp@pp-virtual-machine:~/lua$ pwd
/home/pp/lua
pp@pp-virtual-machine:~/lua/lua-5.2.3$ pwd
/home/pp/lua/lua-5.2.3
3、cd
(1)作用:改变工作目录
(2)格式:cd [路径] ---------其中的“路径”为要改变的工作目录,可为相对路径或绝对路径
(3)使用实例
相对路径
pp@pp-virtual-machine:~/lua/lua-5.2.3$ cd src/
pp@pp-virtual-machine:~/lua/lua-5.2.3/src$
绝对路径
pp@pp-virtual-machine:~/lua/lua-5.2.3/src$ cd /home/pp/lua/
pp@pp-virtual-machine:~/lua$
pp@pp-virtual-machine:~/lua$ pwd
/home/pp/lua
(4)使用说明
该命令将当前目录改变至指定路径的目录,若没有指定路径,则会回到当前用户的宿主目录。此外,可以使用“cd -” 回到上一步之前的工作目录;“cd ~” 可进入用户的宿主目录;还有“ ./ ”代表当前目录,“ ../ ”代表上级目录。
pp@pp-virtual-machine:~/lua$ cd ./
pp@pp-virtual-machine:~/lua$
pp@pp-virtual-machine:~/lua$ cd ../
pp@pp-virtual-machine:~$
4、mkdir
(1)作用:创建一个目录
(2)格式:mkdir [选项] 路径目录名
(3)常见参数
mkdir -m 777 xxx 设置权限
mkdir -p xxx 创建尚不存在的目录
mkdir -v xxx 创建后显示信息
(4)使用实例
pp@pp-virtual-machine:~/lua$ mkdir -p a/b
pp@pp-virtual-machine:~/lua$ cd a
pp@pp-virtual-machine:~/lua/a$ cd b
pp@pp-virtual-machine:~/lua/a/b$ pwd
/home/pp/lua/a/b
5、rmdir
(1)作用:删除空目录
(2)格式:rmdir [选项] 路径目录名
(3)使用实例
pp@pp-virtual-machine:~/lua/a$ rmdir b
注意:b目录下没有文件,否则无法删除。比如:
pp@pp-virtual-machine:~/lua/a$ rmdir a
rmdir: 删除 "a" 失败: 目录非空
6、touch
(1)作用:建立指定名称的文件或者更新该文件的时间戳
(2)格式:touch [选项] 文件名
(3)使用实例
pp@pp-virtual-machine:~/lua/a/a/b$ ls
pp@pp-virtual-machine:~/lua/a/a/b$ touch test.c
pp@pp-virtual-machine:~/lua/a/a/b$ ls
test.c
如果文件存在,则更新时间戳
pp@pp-virtual-machine:~/lua/a/a/b$ ll
总用量 8
drwxrwxr-x 2 pp pp 4096 12月 2 13:08 ./
drwxrwxr-x 3 pp pp 4096 12月 2 12:44 ../
-rw-rw-r-- 1 pp pp 0 12月 2 13:08 test.c
---------------------------------------------------
pp@pp-virtual-machine:~/lua/a/a/b$ touch test.c
pp@pp-virtual-machine:~/lua/a/a/b$ ll
总用量 8
drwxrwxr-x 2 pp pp 4096 12月 2 13:08 ./
drwxrwxr-x 3 pp pp 4096 12月 2 12:44 ../
-rw-rw-r-- 1 pp pp 0 12月 2 13:09 test.c //时间已改变
7、mv
(1)作用:为文件或目录改名,或将文件移至另一个目录中
(2)格式:mv [选项] 源文件或目录 目标文件或目录
(3)常见参数
mv -b 覆盖前备份
mv -f 强行覆盖
mv -i 覆盖前询问
mv -u 新文件的话更新
mv -t 目标 源 多个源文件到一个目标目录
(4)使用实例
修改文件名
pp@pp-virtual-machine:~/lua/a/a/b$ ls
test.c
pp@pp-virtual-machine:~/lua/a/a/b$ mv test.c test.a
pp@pp-virtual-machine:~/lua/a/a/b$ ls
test.a
移动文件
pp@pp-virtual-machine:~/lua/a/a/b$ ls //查看当前目录下的文件
test.a
pp@pp-virtual-machine:~/lua/a/a/b$ mv test.a ../ //把文件test.a移到上级目录
pp@pp-virtual-machine:~/lua/a/a/b$ ls //再次查看当前目录下的文件,已移走,所以不存在
pp@pp-virtual-machine:~/lua/a/a/b$ cd .. //切换到上级目录
pp@pp-virtual-machine:~/lua/a/a$ ls //查看当前目录下的文件,发现test.a文件
b test.a
8、cp
(1)作用:将给出的文件或目录复制到另一个文件或目录下
(2)格式:cp [选项] 源文件或目录 目标文件或目录
(3)常见参数
cp -a 源 目标 将文件的属性也同时复制
cp -d 源 目标 拷贝时保留链接
cp -i 源 目标 覆盖前提示
cp -rf 源 目标 强制拷贝目录文件
(4)使用实例
pp@pp-virtual-machine:~/lua/a/a$ ls //查看当前目录下的文件
b
pp@pp-virtual-machine:~/lua/a/a$ cp ../../e13.cpp ./ //使用命令cp拷贝上级目录的上级目录的文件e13.cpp 放到当前目录下
pp@pp-virtual-machine:~/lua/a/a$ ls //查看当前目录下的文件
b e13.cpp
9、rm
(1)作用:删除一个或多个普通文件或目录文件
(2)格式:rm [选项] 文件或目录
(3)常用命令
rm 文件名(普通文件)
rm 文件/目录 -rf //主要用来强制删除目录文件
(4)使用实例
pp@pp-virtual-machine:~/lua/a/a$ ls
b e13.cpp //b是目录文件
pp@pp-virtual-machine:~/lua/a/a$ rm b
rm: 无法删除"b": 是一个目录
pp@pp-virtual-machine:~/lua/a/a$ rm b -rf
pp@pp-virtual-machine:~/lua/a/a$ ls
e13.cpp
pp@pp-virtual-machine:~/lua/a/a$
10、find
(1)作用:在指定的目录范围中搜索文件,它的使用权限是所有用户
(2)格式:find [起始位置路径] [选项] [描述]
其中的路径为文件搜索路径,系统开始沿着此目录树向下查找文件。它可以是一个路径列表,相互之间用空格隔开。若路径缺省,系统默认为当前目录。
另外,其中的描述是匹配表达式,是find命令能够接受的模式匹配表达式。
(3)常见参数
选项参数:-depth 使用深度级别的查找方式
描述参数:-name 支持通配符*和?
-type 按文件的类型进行查找(目录文件为d,链接文件为l)
(4)使用实例
pp@pp-virtual-machine:~/lua$ find ./lua-5.2.3/src/ -name "lua*" //查找当前目录下lua-5.2.3的目录下src目录下 文件名包含有lua的所有文件
./lua-5.2.3/src/lua.hpp
./lua-5.2.3/src/lualib.h
./lua-5.2.3/src/lua
./lua-5.2.3/src/luac.o
./lua-5.2.3/src/lua.o
./lua-5.2.3/src/lua.c
./lua-5.2.3/src/luac.c
./lua-5.2.3/src/luaconf.h
./lua-5.2.3/src/luac
./lua-5.2.3/src/lua.h
11、cat
(1)作用:连接并显示指定的一个和多个文件的内容,全屏的一次列显,为全屏查看
(2)格式:cat [选项] 文件1 文件2 文件3 .....
(3)常见参数
选项参数:-n 从第一行开始对所有的输出的行编号
(4)使用实例
pp@pp-virtual-machine:~/lua$ cat -n e12.lua
1 function add(x, y)
2 return x + y
3 end
4
12、more和less
(1)more命令功能:让画面在显示满一页时暂停,此时可按空格键继续显示下一个画面,或按q键停止显示,为分屏查看。
less命令功能:less命令的用法与more命令类似,也可以用来浏览超过一页的文件,只不过less命令除了可以按空格键向下显示文件外,还可以利用上下键来滚动查看文件。
(2)格式:more或less 文件名
(3)使用实例
pp@pp-virtual-machine:~/lua$ more e12.lua
function add(x, y)
return x + y
end
13、head和tail
(1)head和tail命令功能:可分别只显示文件的头几行和尾部几行。
(2)格式:head或tail [指定行数] 文件名 ------缺省,默认为10行
(3)使用实例
pp@pp-virtual-machine:~/lua$ head -10 e13.cpp
#include <stdio.h>
extern "C"
{
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
14、grep
(1)作用:在指定的文件中搜索特定匹配的内容,并将含有这些内容的行标准输出。
(2)格式:grep [选项] 格式 [文件及路径]
其中“格式”是指要搜索内容的正则表达式格式,若缺省“文件及路径”则默认在当前目录下搜索
(3)常见参数
选项参数:-c 只输出匹配行的计数
-I 不区分大小写
-h 查询多文件时不显示文件名
-n 显示匹配行及行号
(4)使用实例
pp@pp-virtual-machine:~/lua$ grep main e13.cpp
int main()